Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909

    valore fuori ciclo while

    salve a tutti come da oggetto,

    dovrei prelevare dei dati da una tabella tramite ciclo while, il problema è che dopo dovrei invarli tramite un'unica mail.

    Se insirisco la funzione mail all'interno del ciclo while mi invierà tante mail quanti sono i dati estratti, se lo faccio al di fuori la variabile che contiene le righe estratte non è valorizzata

    codice:
    
    $dati = mysql_query("SELECT * FROM tabella where x=y');
    WHILE($row = mysql_fetch_array($dati)){
    
    $campo = $row[campo];
    
    }
    
    
    
    
    $mailto = io@tu.it ;
    
    
    
    $subject = "oggetto" ; 
    
     
    
    $messageproper =    "i dati estratti $campo (non valorizzata
    
    mail($mailto, $subject, $messageproper, "From: io.it<$email>\nReply-To: \'$nome\' <$email>\nX-Mailer: chfeedback.php 2.02" );

    Come posso ovviare??


    Grazie.

  2. #2
    Puoi appendere i valori estratti al fondo della stringa $campo

    Codice PHP:
    $campo .= "$row['campo']\n"

  3. #3
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909
    ma $row['campo'] fuori dal ciclo while non ha nessun valore

    codice:
    while{
    
    $campo .= "$row['campo']\n";
    }
    
    
    $campo ="non è valorizzato essendo fuori dal cilclo"

  4. #4
    Codice PHP:
    $campo "";

    $dati mysql_query("SELECT * FROM tabella where x=y");

    WHILE(
    $row mysql_fetch_array($dati)){

    $campo .= "$row['campo']\n";

    }

    ... 
    all'uscita dal ciclo troverai tutti i valori nella variabile $campo con il formato


    valore1
    valore2
    valore3
    ...

  5. #5
    Utente di HTML.it L'avatar di bode
    Registrato dal
    Feb 2007
    Messaggi
    304
    Puoi usare un array in questo modo:
    Codice PHP:
    $dati mysql_query("SELECT * FROM tabella where x=y');
    $i=0;
    WHILE(
    $row = mysql_fetch_array($dati)){

    $campo[$i] = $row[campo];
    $i++;

    Cosi avrai per ogni indice i=0,1...finchè verrà estratto il campo e potrai mandare tramite email il contenuto dell'array!

  6. #6
    Utente di HTML.it
    Registrato dal
    Jul 2005
    Messaggi
    909

    risolto

    $campo = "";

    $dati = mysql_query("SELECT * FROM tabella where x=y");

    WHILE($row = mysql_fetch_array($dati)){

    $campo .= "$row['campo']\n";

    }
    Ho risolto seguendo quanto scritto da google01


    Grazie a tutti

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.