Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727

    aggiungere campo in tabella non fatta da me...

    ciao, ho quest'applicativo NON fatto da me

    <?php
    if ($from==1)
    {
    $unaemail = explode(" ", $email);
    $nuovi=count($unaemail);
    foreach($unaemail as $val)
    {
    $strSQL="replace into tabella set email='$val'";
    mysql_query($strSQL);
    }
    $strSQL="select * from tabella;";
    $result=mysql_query($strSQL);
    $tutti=mysql_num_rows($result);
    }
    ?>

    mi permette d'inserire tanti indirizzi email contemporaneamente dentro un DB; ora ho l'esigenza di aggiungere un campo nuovo (SCADENZA) a questa tabella e far si che mentre inserisco nel db le varie email venga inserita anche per ognuna la data di scadenza, pensavo di fare così ma NON funzia-->

    <?php
    if ($from==1)
    {
    $unaemail = explode(" ", $email);
    $nuovi=count($unaemail);
    foreach($unaemail as $val)
    {
    $strSQL="replace into tabella set email='$val'";
    mysql_query($strSQL);
    }
    $strsql="INSERT tabella SET scadenza='$scadenza'";
    $strSQL="select * from tabella;";
    $result=mysql_query($strSQL);
    $tutti=mysql_num_rows($result);
    }
    ?>

    dove sbaglio??

  2. #2
    1) Hai modificato la struttura della tabella da phpmyadmin?

    2) La scadenza rispetto a cosa?

    3) Ti consiglio cmq di usare il formato aaaa-mm-gg per la scadenza!

  3. #3
    allora partiamo con il presupposto che devi essere in possesso delle credenziali che ti permettono DDL (data definition language) adeguate..

    se non hai accesso a un front-end come phpmyadmin puoi modificare la struttura di una tabella attraverso ALTER TABLE, il che putroppo mi sa che sarebbe un po' compicato per te anche perchè non sapendo la struttura attuale della tabella rischieresti addirittura di troncare i dati.

    per i dettagli sull'istruzione alter table ti rimando qui http://www.w3schools.com/SQl/sql_alter.asp
    Ubuntu rulez!! :P

  4. #4
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    okok non mi ero spiegato bene, scusate
    ovviamente ho phpmyadmin e ho già inserito il nuovo campo che si chiama SCADENZA
    il mio problema non è modificare il DB
    è far funzionare il php in modo che mi inserisca anche il valore scadenza!!
    ho provato e mi inserisce solo le email (con le modifiche di php postate sopra)

  5. #5
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    scusate ancora, mi sono riletto e mi ero spiegato proprio di merda!!
    sarà il caldo!!
    è questa la riga che ho aggiunto

    $strsql="INSERT tabella SET scadenza='$scadenza'";

    e che non fà nulla......

  6. #6
    se la query è quella sfido a farle fare qualcosa..

    manca INTO

    Codice PHP:
    $strsql="INSERT INTO tabella SET scadenza='$scadenza'"
    Ubuntu rulez!! :P

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    eh no, avevo anche già provato prima
    anche se metto INTO mi inserisce le email nel campo email ma il campo scadenza nel DB rimane vuoto...
    (e ovviamente il form l'ho riempito in entrambi i campi...)

  8. #8
    per curiosita fai un print o un echo della variabile scadenza e vedi se è valorizzata correttamente..
    Ubuntu rulez!! :P

  9. #9
    sto riguardando meglio il codice che hai postato prima e ti consiglio di rivederti la sintassi sql


    per l'insert

    INSERT INTO nome-tabella(campo1,campo2) values(valore1,valore2)

    per l'alter

    ALTER nome-tabella
    set campo1 = valore 1,
    campo2 = valore 2


    per concludere per modificare il codice originario basta che fai così

    codice:
    <?php
    if ($from==1){
    	$unaemail = explode(" ", $email);
    	$nuovi=count($unaemail);
    	foreach($unaemail as $val){
    		$strSQL="replace into tabella set email='$val', scadenza='$scadenza'";
    		mysql_query($strSQL);
    	}
    	$strSQL="select * from tabella;";
    	$result=mysql_query($strSQL);
    	$tutti=mysql_num_rows($result);
    }
    ?>
    Ubuntu rulez!! :P

  10. #10
    Utente di HTML.it
    Registrato dal
    Jul 2000
    Messaggi
    727
    fantastico, funziona, grazieeeee

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 © 2024 vBulletin Solutions, Inc. All rights reserved.