Visualizzazione risultati 1 fino 6 di 6

Discussione: non riesco a estrarre oiù di una foto dal mysq

  1. #1
    Guest

    Predefinito non riesco a estrarre più di una foto dal mysq

    non riesco a far stampare più di una foto visto che l'id assume un solo valore molto probabilmente perchè devo inserire un ciclo.. ma non vedo come ,nel senso che $_get[id] nel mio caso assume un solo valore in realtà dovrebbe assumere più di un valore cioè tutti i valori id dei campi tella tabella....
    Codice PHP:
    <?PHP
    if($_GET['id'] == "")
    header("Location: visualizza.php");

    // Connessione e selezione del database
    mysql_connect("localhost", "root", "")
    or die(
    "Connessione non riuscita: " . mysql_error());

    if(!
    mysql_select_db("mioguest"))
    die(
    "Selezione database fallita!");

    // Query per recuperare il file
    $query = "SELECT * FROM upload WHERE id = " . $_GET["id"];
    $risultato = mysql_query($query)
    or die(
    "Query non valida: " . mysql_error());
    $tmp = mysql_fetch_array($risultato);

    // Invio l'intestazione contenente il tipo MIME del file
    header("Content-Type: " . $tmp["tipo"]);

    // Invio il contenuto del file
    echo $tmp["contenuto"];

    ?>
    Ultima modifica di alemoppo : 01-07-2011 alle ore 12.35.06 Motivo: +tag [php] non fantasmi

  2. #2
    L'avatar di saitfainder
    saitfainder non è connesso Sëniör Stäff
    Data registrazione
    06-12-2002
    Residenza
    Torino
    Messaggi
    8,715

    Predefinito

    Veramente stampa un link per ogni riga presente nel database.


    «È una mia peculiarità distorcere la verità e inventarne di nuove.»
    «I tuoi orientamenti hanno su di me un effetto prossimo allo zero.»


  3. #3
    Guest

    Predefinito

    mmm mi stampa solo un link prova guardare questo codice perpiacere devo mettere un ciclo???

  4. #4
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,683

    Predefinito

    Sì, prova con un ciclo; ad esempio in questo modo:
    Codice PHP:
    while($tmp = mysql_fetch_array($risultato))
    {
    // Invio l'intestazione contenente il tipo MIME del file
    header("Content-Type: " . $tmp["tipo"]);

    // Invio il contenuto del file
    echo $tmp["contenuto"];
    }
    Però, forse,
    Codice PHP:
    header("Content-Type: " . $tmp["tipo"]);
    Lo dovresti scrivere solo la prima volta??
    (non ho molta esperienza con le immagini generate in questo modo :P)

    Ciao!

  5. #5
    Guest

    Predefinito

    Codice PHP:
    $query = "SELECT * FROM upload WHERE id = " . $_GET["id"];
    anche io uso questo sistema per recuperare foto dal database :) in questo caso con questa query chiedi di visualizzarti solo ciò che trova all id corrispondente!! dovresti usare un altro parametro della tabella per trovare più corrispondenze tipo:
    Codice PHP:
    $query = "SELECT * FROM upload WHERE uploader = " . $_GET["uploader"];
    //dove uploader sarebbe (diciamo) chi carica la foto
    $risultato = mysql_query($query);
    // e questo è il ciclo che ti serve per stamparle dal primo all ultimo
    while($tmp = mysql_fetch_array($risultato)){
    header("Content-Type: " . $tmp["tipo"]); }
    ovviamente non conosco la tua tabella 'upload' però penso che sia chiaro come esempio
    Ultima modifica di Sharefiles : 02-07-2011 alle ore 08.20.42

  6. #6
    L'avatar di alemoppo
    alemoppo non è connesso Staff AV
    Data registrazione
    24-08-2008
    Residenza
    PU / BO
    Messaggi
    22,683

    Predefinito

    Come detto sopra, in pratica non ho mai usato questo modo; però questo modo, per foto multiplie, mi "puzza" :

    Il codice di Sharefiles non stampa il contenuto dell'immagine, quindi non capisco come fa eventualmente a mosrarla.

    Invece, quello che ho scritto io non ha molto senso:

    Mettiamo siano 2 foto da visualizzare; una *png, l'altra *.jpg. Lo script cosa fa?
    -setta il tipo della pagina come png
    -scrive il contenuto dell'immagine png
    -(ri)setta il tipo della pagina come jpg
    -scrive il contenuto dell'immagine jpg

    Il punto che risetta il tipo dell'immagine è errato 2 volte:

    1-se la pagina è png, non può cambiarlo, perché altrimenti l'immagine precedente verrebbe fuori mal interpretata
    2-Ormai è stato printato dell'output (il contenuto della *.png), quindi non può accedere agli header della pagina modificandoli (li ha già inviati)...

    Quindi, una soluzione sarebbe quella di prelevare foto per foto tramite ajax.

    n.b: forse ho detto cavolate: non ho mai usato questo tipo di archiviazione immagini, però ho detto quello che credo...

    Ciao!
    Ultima modifica di alemoppo : 02-07-2011 alle ore 12.04.58

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •