Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12

Discussione: Creare nuovo record

  1. #1

    Creare nuovo record

    Ciao ragazzi potreste darmi un aiuto con questo codice non riesco a mandarlo in esecuzione
    con seguente errore:
    Notice: Undefined variable: inviato in c:\programmi\easyphp1-8\www\studio\php\database\creare un record\uf13.php on line 12


    <?php

    $hn = "localhost";
    $un = "root";
    $pw = "";
    $db = "azienda";
    if ($inviato)
    {
    $db = mysql_connect ($hn, $un, $pw);

    $sqlinterr = "INSERT persone";
    $sqlinterr.= " cognome, nome, numero_personale,";
    $sqlinterr.= " stipendio, data_nascita VALUES";
    $sqlinterr.= "$cg, $nm, $np, $st, $dn";

    $res = mysql_db_query ("azienda", $sqlinterr);
    $num = mysql_affected_rows ();

    if ($num > 0)
    echo "è stato aggiunto 1 record";
    else
    {
    echo " è stato commesso un errore, ";
    echo "non è stato aggiunto alcun record

    ";
    }
    mysql_close ($db);
    }
    ?>
    </head>
    <body>
    Immettere un record completo e inviare il form:
    <form action="uf13.php" method="post">
    <input name="cg" /> Cognome

    </p>
    <input name="nm" /> Nome

    </p>
    <input name="np" /> Numero personale

    </p>
    <input name="st" /> Stipendio (Punto come separatore decimale)

    </p>
    <input name="dn" /> Data di nascita (Usare il seguente formato AAAA-MM-GG)

    </p>
    <input type="submit" name="inviato" />
    <input type="reset" />
    </form>
    Visualizzare tutti i record
    </body>
    erbagold

  2. #2
    la forma corretta è la seguente

    $sqlinterr = "INSERT INTO tabella(persone,";
    $sqlinterr.= "cognome, nome, numero_personale,";
    $sqlinterr.= " stipendio, data_nascita) VALUES (";
    $sqlinterr.= "$cg, $nm, $np, $st, $dn, $xx, $yy)";


    hai fatto diversi errore..la sintassi di INSERT è

    INSERT INTO tabella(campo1, campo2...campoN) VALUES (valore1, valore2...valoreN)

  3. #3
    ok grazie mille ora prova ti ringrazio per i tuoi utili consigli.
    erbagold

  4. #4
    Ho provato ad inserire la sintassi che mi hai suggerito ma ho sempre l'errore, che non viene riconosciuta la variabile di "$inviato"

    <?php

    $hn = "localhost";
    $un = "root";
    $pw = "";
    $db = "azienda";
    if ($inviato) <------- non mi passa questa variabile il messaggio di errore si riferisce a questa riga --->(Notice: Undefined variable: inviato in c:\programmi\easyphp1-8\www\studio\php\database\creare un record\uf13.php on line 12)


    {
    $db = mysql_connect ($hn, $un, $pw);

    $sqlinterr = "INSERT INTO persone";
    $sqlinterr.= "(cognome, nome, numero_personale,";
    $sqlinterr.= " stipendio, data_nascita) VALUES";
    $sqlinterr.= "($cg, $nm, $np, $st, $dn,)";

    $res = mysql_db_query ("azienda", $sqlinterr);
    $num = mysql_affected_rows ();

    if ($num > 0)
    echo "è stato aggiunto 1 record";
    else
    {
    echo " è stato commesso un errore, ";
    echo "non è stato aggiunto alcun record

    ";
    }
    mysql_close ($db);
    }
    ?>
    </head>
    <body>
    Immettere un record completo e inviare il form:
    <form action="uf13.php" method="post">
    <input name="cg" /> Cognome

    </p>
    <input name="nm" /> Nome

    </p>
    <input name="np" /> Numero personale

    </p>
    <input name="st" /> Stipendio (Punto come separatore decimale)

    </p>
    <input name="dn" /> Data di nascita (Usare il seguente formato AAAA-MM-GG)

    </p>
    <input type="submit" name="inviato" />
    <input type="reset" />
    </form>
    erbagold

  5. #5
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Codice PHP:
    <?php

    $hn 
    "localhost";
    $un "root";
    $pw "";
    $db "azienda";
    if (
    $inviato) <------- non mi passa questa variabile il messaggio di errore si riferisce a questa riga --->(NoticeUndefined variableinviato in c:\programmi\easyphp1-8\www\studio\php\database\creare un record\uf13.php on line 12)


    {
    $db mysql_connect ($hn$un$pw);

    $sqlinterr "INSERT INTO persone";
    $sqlinterr.= "(cognome, nome, numero_personale,";
    $sqlinterr.= " stipendio, data_nascita) VALUES";
    $sqlinterr.= "($cg$nm$np$st$dn,)";

    $res mysql_db_query ("azienda"$sqlinterr);//questo mettilo subito dopo $db = mysql_connect ($hn, $un, $pw);
    $num mysql_affected_rows ();

    if (
    $num 0)
    echo 
    "è stato aggiunto 1 record";
    else
    {
    echo 
    " è stato commesso un errore, ";
    echo 
    "non è stato aggiunto alcun record

    "
    ;
    }
    mysql_close ($db);
    }
    ?>
    </head>
    <body>
    Immettere un record completo e inviare il form:
    <form action="uf13.php" method="post">
    <input name="cg" /> Cognome

    </p>
    <input name="nm" /> Nome 

    </p>
    <input name="np" /> Numero personale

    </p>
    <input name="st" /> Stipendio (Punto come separatore decimale)

    </p>
    <input name="dn" /> Data di nascita (Usare il seguente formato AAAA-MM-GG)

    </p>
    <input type="submit" name="inviato" />
    <input type="reset" />
    </form>
    prova così come ti ho segnalato, ma non credo sia quello

  6. #6
    Non e quello l'errore ma comunque ho fatto una prova che e' stata negativa.
    Devo assegnare sicuramente un valore alla variabile $inviato pero non so come fare, in quanto non viene riconosciuta all'avvio del programma e quindi nnon passa il valore che assume alla partenza.
    erbagold

  7. #7
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    $inviato è una variabile che viene valorizzata nella pagina precedente, ho capito bene?
    Come viene passata? Che tipo di variabile è, cioè da cosa deriva?

  8. #8
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    mi rispondo da solo, non avevo guarda to bene il codice HTML del form...

    Tu invvi i dati del for con il metodo post, ma nel codice php non identifichi le variabili che vengono passate...

    dovresti mettere, per ciascun campo del form $cg=$_POST[cg] altrimenti le variabili non sono valorizzate

    Sperando di non aver scritto min....ate

  9. #9
    Non va ora mi da un errore generico.
    Ci avevo pensato anch'io a una soluzione di questo tipo ma non mi ha datto esisto positivo.
    Le istruzioni da me datte erano le seguenti:

    $inviato=$_POST[cg]
    $cg=$POST[cg]
    logicamente provate separatamente prima una poi l'altra.

    ho povato le due soluzioni ma niente.
    il messaggio di errore e il seguenti e siriferice alle righe di codice inserite:

    Parse error: parse error in c:\programmi\easyphp1-8\www\studio\php\database\creare un record\uf13.php on line 14
    erbagold

  10. #10
    Utente di HTML.it L'avatar di clasku
    Registrato dal
    Aug 2006
    Messaggi
    3,197
    Ti scrivo come farei io, non l'ho provato prima, magari c'è qualche errorino
    Codice PHP:
    <?php

    $hn 
    "localhost";
    $un "root";
    $pw "";
    $nomedb "azienda";

    $db mysql_connect ($hn$un$pw) or die("impossibile trovare il server " .mysql_error());
    mysql_select_db($nomedb,$db) or die ("impossibile trovare il DB " .mysql_error());

    $sqlinterr "INSERT INTO persone(cognome, nome, numero_personale, stipendio, data_nascita) VALUES ($cg$nm$np$st$dn,)";

    $res mysql_db_query ($sqlinterr) or die .mysql_error();
    $num mysql_affected_rows ();

    if (
    $num 0)
    echo 
    "è stato aggiunto 1 record";
    else
    {
    echo 
    " è stato commesso un errore, ";
    echo 
    "non è stato aggiunto alcun record

    "
    ;
    }
    mysql_close ($db);
    }
    ?>
    </head>
    <body>
    Immettere un record completo e inviare il form:
    <form action="uf13.php" method="post">
    <input name="cg" /> Cognome

    </p>
    <input name="nm" /> Nome 

    </p>
    <input name="np" /> Numero personale

    </p>
    <input name="st" /> Stipendio (Punto come separatore decimale)

    </p>
    <input name="dn" /> Data di nascita (Usare il seguente formato AAAA-MM-GG)

    </p>
    <input type="submit" name="inviato" />
    <input type="reset" />
    </form>

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.