1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Criar um sistema de upload que permita colocar as fotos em "areas" especificas

Discussão em 'Web Development' iniciada por Fil__, 23 de Janeiro de 2008. (Respostas: 6; Visualizações: 4328)

  1. Fil__

    Fil__ Power Member

    Tal como o titulo indica pretendo criar um sistema de upload que permita colocar as fotos em "areas" especificas.

    Ou seja, quero que a pessoa depois de fazer o browse e ter a foto escolhida, va a um list criado no html e escolher uma das opçoes para que a foto va para essa opçao (ex: fotos de um opel vao para a opçao carros e as fotos de uma kawasaki vao para a opçao motas).

    Alem disso gostava que fosse possivel ter um campo onde a pessoa mete-se o nome que quer dar a foto que vai carregar para o servidor. Uso html, php, css e javascript e mysql.

    Tenho contado com as ajudas entre outros do LuCk, Heckel e do fil79. Podem uma vez mais ajudar-me neste projecto de aprendizagem indicando-me exemplos que façam isto e ajudando-me? Thanks malta :x2:
     
  2. davidprod

    davidprod Power Member


    pelo que deu para entender, tu queres um sistema para fazer upload onde possas escolher a categoria. É simples, vou tentar ajudar.

    crias uma tabela na base de dados, fotos por exemplo com os campos id, nome, caminho e categoria.

    De seguida crias o formulário no php com um insert mais ou menos assim (já com o codigo automatico do dreamweaver):

    $insertSQL = sprintf("INSERT INTO fotos (nome, caminho,categoria) VALUES (%s, %s, %s)",
    GetSQLValueString($_POST['nome'], "text"),
    GetSQLValueString($_FILES['foto']['name'], "text"),
    GetSQLValueString($_POST['categoria'], "text"));



    depois para fazer o upload da foto:

    copy ($_FILES['foto']['tmp_name'], $_FILES['foto']['name']);


    isto é apenas um exemplo simples...
     
  3. Fil__

    Fil__ Power Member

    Código:
    $errmsg = "";
    if (! @mysql_connect("*****","*******","********")) {
            $errmsg = "Cannot connect to database";
            }
    @mysql_select_db("********");
    
    // Insert any new image into database
    
    if ($_REQUEST[completed] == 1) {
            // Need to add - check for large upload. Otherwise the code
            // will just duplicate old file ;-)
            // ALSO - note that latest.img must be public write and in a
            // live appliaction should be in another (safe!) directory.
            move_uploaded_file($_FILES['imagefile']['tmp_name'],"latest.img");
            $instr = fopen("latest.img","rb");
            $image = addslashes(fread($instr,filesize("latest.img")));
            if (strlen($instr) < 149000) {
                    mysql_query ("insert into pix (title, imgdata) values (\"".
                    $_REQUEST[whatsit].
                    "\", \"".
                    $image.
                    "\")");
            } else {
                    $errmsg = "Too large!";
            }
    }
    
    Estou a usar este codigo para fazer o upload e funciona.
    O codigo da minha base de dados é este:
    create table pix (
    pid int primary key not null auto_increment,
    title text,
    imgdata longblob)

    O meu html e este
    Código:
    <html><head>
    <title>Upload an image to a database</title>
    <body bgcolor=white><h2><font color=red>
    <?= $errmsg ?>
    </font>
    </h2>
    <form enctype=multipart/form-data method=post>
      <p>
      <input type=hidden name=MAX_FILE_SIZE value=150000>
      <input type=hidden name=completed value=1>
        Escolher Imagem: 
        <input name=imagefile type=file lang="pt">
      <br>
        Nome da Imagem: 
        <input name=whatsit>
      <br>
      Categoria da Imagem:
      <select name="select">
        <option>Carros</option>
        <option>Motas</option>
        <option>Barcos</option>
        <option>Avioes</option>
      </select>
      <br>
      <input type=submit value="OK">
      </p>
    </form>
    </body>
    </html>
    
    O que pretendo e poder escolher a categoria para onde gravar a foto mas nao consigo. Como faço? :005:
     
    Última edição: 24 de Janeiro de 2008
  4. Fil__

    Fil__ Power Member

    Ja agora, esta base de dados de imagens depois tambem interage com o editor WYSIWYG nao é?
    Desde que tejam "ligadas" correcto?
     
  5. davidprod

    davidprod Power Member

    Categoria da Imagem:
    <select name="select">
    <option value="carros">Carros</option>
    </select>

    falta o valor da opção... :D


    Em relação a esse editor, não conheço dsclpa
     
  6. Fil__

    Fil__ Power Member

    Para alem do valor falta depois codigo php nao é? E ai que reside a minha dificuldade devido ao meu fraco conhecimento de php. Esse e daqueles editores para escrita como este onde escrevemos no forum. Mas amigo, nao peças desculpa, eu e que agradeço a tua ajuda
     
  7. davidprod

    davidprod Power Member

    Nessa lista não é necessário basta colocares assim.

    tens é de fazer o insert em sql usando os valores das caixas e da lista de caregorias..
    $_POST['categoria'] como exemplo
     

Partilhar esta Página