Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 27
  1. #1

    Inserimento dati in un db tramite form e php

    Ciao,

    ho creato il form in index.html e lo script per l'action in php per inserire dei dati in una tabella di un db sql.

    Ho provato il tutto in locale e tutto ok.
    Sussiste pero' il problema in remoto:
    richiamo lo script dopo aver inserito i dati nel form,

    mi inserisce i dati nel db ma proprio le due colonne che
    devo inserire risultano vuote. Se ripeto l'operazione
    con altri dati mi dice che non puo' eseguire l'operazione
    (perchè non puo' riscrivere la stessa variabile se di tipo
    primaria).

    Che cosa puo' essere?

    Non dormo +!!!!!!

    provate lo script su questo link

    grazie

  2. #2
    Provare lo script non serve a niente. Devi postare il codice di inserimento! In particolare le query!
    Sono quelle che danno errore e sono quelle, quindi, che vanno postate! Ciao!

  3. #3

    ecco il codice

    IL FORM:
    <html>
    <head>
    <title>Registrazione</title>
    </head>
    <center>
    <form method="POST" action="regmail.php">
    nick: <input name="$nick">

    password: <input name="$pass">





    <input type="submit" value="Invia">
    </form>
    </center>
    </html>

    L'ACTION:
    <?
    require("http://www.sfizioso.net/mail/index.html");

    $server = "localhost"; $utente = "*****";

    $password = "*****"; $database = "***";

    $connessione = @mysql_connect($server,$utente,$password)
    or die("non riesco a
    connettermi al server MySql
    $server");

    $db = @mysql_select_db($database,$connessione) or die
    ("non riesco a selezionare il database $database");

    $sql = "insert into mail values
    ('', '$nick', 'true', 'true', 3, 'false', NULL, 'false', 'false', -1, 1)";

    $sql0 = "insert into accounts values
    ('', 'plain', '$pass')";

    $query= mysql_query($sql,$connessione)or die
    ("non riesco ad eseguire la
    query:
    [b]$sql");

    $query= mysql_query($sql0,$connessione)or die
    ("non riesco ad eseguire la
    query:
    [b]$sql0");

    mysql_close($connessione);

    echo "<center><h2>Grazie per la registrazione!



    Riepilogo:

    Il tuo nuovo indirizzo EMail: $nick@sfizioso.net

    POP3: mail.sfizioso.net

    SMTP: mail.sfizioso.net



    Se hai qualche domanda o hai bisogno di aiuto

    non esitare a <a href=\"mailto:webmaster@sfizioso.net\">contattarci </a>!";
    ?>

  4. #4
    Prova a sostituire questi:

    codice:
    $query= mysql_query($sql,$connessione)or die
    ("non riesco ad eseguire la
    query:
    [b]$sql");
    
    $query= mysql_query($sql0,$connessione)or die
    ("non riesco ad eseguire la
    query:
    [b]$sql0");
    con questi

    codice:
    $query= mysql_query($sql,$connessione)or die
    (mysql_error());
    
    $query= mysql_query($sql0,$connessione)or die
    (mysql_error());
    Cmq non c'è bisogno di assegnare mysql_query ad una variabile. Fammi sapere. Ciao!

  5. #5

    niente ancora....

    se cambio il codice mi da' l'errore di sql:

    Duplicate entry '1-' for key 2

    perchè non riscrive la stessa cosa, cioè niente.
    Mi lascia sempre la colonna vuota non assumendo le informazioni del form.

    Sembra che richiami index.html (il form) in una nuova pagina
    che naturalmente ha i campi vuoti.

    grazie cmq. per il tuo aiuto

  6. #6
    prova cosi :

    <html>
    <head>
    <title>Registrazione</title>
    </head>
    <center>
    <form method="POST" action="regmail.php">
    nick: <input name="nick">

    password: <input name="pass">





    <input type="submit" value="Invia">
    </form>
    </center>
    </html>


    regmail.php :

    <?
    require("http://www.sfizioso.net/mail/index.html");

    $server = "localhost"; $utente = "*****";

    $password = "*****"; $database = "***";

    $connessione = @mysql_connect($server,$utente,$password
    )
    or die("non riesco a
    connettermi al server MySql
    $server");

    $db = @mysql_select_db($database,$connessione)
    or die
    ("non riesco a selezionare il database $database");
    $sql = "insert into mail values
    ('', '$_POST[nick]', 'true', 'true', 3, 'false', NULL, 'false', 'false', -1, 1)";

    $sql0 = "insert into accounts values
    ('', 'plain', '$_POST[pass]')";

    $query= mysql_query($sql,$connessione)or die
    ("non riesco ad eseguire la
    query:
    [b]$sql");

    $query= mysql_query($sql0,$connessione)or die
    ("non riesco ad eseguire la
    query:
    [b]$sql0");

    mysql_close($connessione);

    echo "<center><h2>Grazie per la registrazione!



    Riepilogo:

    Il tuo nuovo indirizzo EMail: $nick@sfizioso.net

    POP3: mail.sfizioso.net

    SMTP: mail.sfizioso.net



    Se hai qualche domanda o hai bisogno di aiuto

    non esitare a <a href=\"mailto:webmaster@sfizioso.net\">contattarci </a>!";
    ?>

  7. #7

    oooooooooooookkkkkkkk

    ok funziona grazie!!!!!

    un'altra domanda:

    devo inserire dove sono i punti interrogativi
    l'ultimo valore creato in autom. in un'altra
    tabella (id della tab. accounts)

    $sql = "insert into mail values
    ('', '$_POST[nick]', 'true', 'true', '????????????', 'false', NULL, 'false', 'false', -1, 1)";

    come faccio o quale comando devo usare?

    mi siete veramente di grande aiuto. Io sono ancora alle prime armi con php e sql.

    grazie ancora

  8. #8
    Devi prima eseguire la query di inserimento nella tabella accounts.
    Quindi ad una variabile assgni ilò valore di mysql_insert_id() ed ottieni l'ultimo id inserito. Ciao!

  9. #9

    doamndina....

    scusa ma non riesco a starti dietro.

    il mio script è sempre quello di sopra.
    La connessione al db è aperta.

    Dove devo effettuare cambiamenti e come???

    scusa la mia ignoranza

  10. #10
    mi potresti fare un esempio sullo script?

    grazie millllllllleee

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.