Visualizzazione risultati 1 fino 4 di 4

Discussione: Non riesco a salvare i dati sul database

  1. #1
    Guest

    Unhappy Non riesco a salvare i dati sul database

    Salve ragazzi ho incontrato un problema fatale,non riesco a salvare sul database i dati:login,password,ip,porta,compleanno,email.Pote te verificare se ho fatto qualche errore? e se c'è mi dite come correggere lo script.

    Codice PHP:
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
    <title>Elaborazione....</title>
    </head>

    <body>
    <?php

    #prendo i dati dal modulo
    $login = $_POST ["login"];
    $password = $_POST ["password"];
    $password2 = $_POST ["password2"];
    $ip = $_POST ["ip"];
    $porta = $_POST ["porta"];
    $compleanno = $_POST ["compleanno"];
    $email = $_POST ["email"];
    #controllo che l'utente abbia inserito tutti i dati e le pwd siano copiate bene
    echo "<CENTER><B> Modulo di registrazione</B><CENTER>";
    $errore=false;
    $errore_password=false;

    if ((
    $login == "" ) || ( $password == "" ) || ( $password2 == "" ) || ( $email == "" ) ) {
    $errore=true;
    }
    if (
    $password != $password2 ) {
    $errore_password=true;
    }
    if (
    $errore) {
    echo
    "<BR>Devi compilare campi obbligatori";
    }
    if (
    $errore_password) {
    echo
    "<BR>Le password inserite devono corrispondere";
    }
    if ((
    $errore) || ($errore_password)) {
    echo
    "<BR>Torna al modulo di<A HREF=\"nuovoutente.php\"> registrazione</A>";
    exit;
    }
    #mi connetto a mysql con il file php
    require ("connect_mysql.php");
    #se tutto è andato bene php esegue le righe successive verificando se esiste quell'utente:
    $sql2 = "SELECT * FROM utenti WHERE login='$login' ";
    $risultati_mysql = mysql_query($sql2);
    #sopprime gli errori con @
    $num_righe=@mysql_num_rows($risultati_mysql);
    if (
    $num_righe != 0 ) {
    echo
    "<BR>Questo Nickname è già in uso, scegline un altro. <A HREF=\"nuovoutente.php\"> Indietro</A>";
    exit;
    }

    #se invece non esiste inserisco i nuovi dati
    mysql_query("insert into utenti (login, password, ip, porta, compleanno, email) values
    ('
    $login', '$password', '$ip', '$porta', '$compleanno', '$email'')");

    #metto la variabile all'id
    $ultimo_id = mysql_insert_id();
    #chiudo mysql
    mysql_close();
    #chiudo php
    ?>

    <p align="center"><strong>Utente inserito con successo!</strong></p>
    <p align="center">Ecco i tuoi dati, conservali con cura, ti serviranno per risolvere eventuali problemi che si potranno verificare in futuro! </p>
    <p align="center"><strong>Il tuo ID utente &egrave;: <? echo " $ultimo_id" ?></strong></p>
    <p align="center"><strong>Username: <? echo " $login" ?></strong></p>
    <p align="center"><strong>Password:<? echo " $password" ?></strong></p>
    <p align="center"><strong>IP: <? echo " $ip " ?></strong></p>
    <p align="center"><strong>Porta:<? echo " $porta" ?></strong></p>
    <p align="center">&nbsp;</p>
    <p align="center"><strong><a href="index.htm">Fai il login </a></strong></p>
    <p align="center"><strong><a href="inserisci_cookie.php">Test per verificare che il tuo browser sia compatibile con questa chat </a></strong></p>
    <p align="center">Grazie per esserti registrato! </p>
    <p align="center"><strong>Powered by Raziel </strong></p>
    <p align="center"><strong><a href="http://thebestchat.altervista.org/">Torna al portale </a></strong></p>
    </body>
    </html>
    Ultima modifica di seneca : 18-12-2008 alle ore 17.52.49

  2. #2
    Guest

    Predefinito

    Codice PHP:
    mysql_query("INSERT INTO utenti (login, password, ip, porta, compleanno, email) VALUES
    ('
    $login', '$password', '$ip', '$porta', '$compleanno', '$email')");
    c'è un apostrofo di troppo

    nota: occhio alle injection
    Ultima modifica di Inverno : 18-12-2008 alle ore 18.24.12

  3. #3
    Guest

    Predefinito

    ok ho risolto qst problema,però vorrei un altro aiutino.
    Nel database ho messo una tabela del grado admin vorrei k ttt quelli k si registrano devono avere sempre il valore 0.
    La tabella si chiama gradoadmin
    Ultima modifica di thebestchat : 18-12-2008 alle ore 18.51.04

  4. #4
    Guest

    Predefinito

    dovresti impostare il valore DEFAULT a 0 con myadmin (o con una query)
    così di default tutti i record inseriti avranno quel campo a 0
    Ultima modifica di Inverno : 18-12-2008 alle ore 18.59.09

Regole di scrittura

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