Visualizzazione dei risultati da 1 a 4 su 4

Discussione: problema con sql

  1. #1

    problema con sql

    salve ho creato un sito ma il problema è che nn riesco a registrarmi il sito è il seguente http://dechiarap.altervista.org/

    ho creato un file chiamato config.php con il seguente codice
    Codice PHP:
    <?php  Function pconnect () {  mysql_connect ("localhost","dechiarap",""); $dbconnection mysql_connect('localhost''dechiarap''');  mysql_select_db("my_dechiarap",$dbconnection ); } ?>
    e l'altro file si chiama register.php
    Codice PHP:
    <?php Include 'config.php'  ?>  <?php if (!isset($_GET['passkey'])){      if (!isset($_POST['invia'])) { ?> <form method="post" action="#" id="formregistrazione">     <label for="username"> Username</label>     <input type="text" name="username" id="username" /> 
         <label for="password1"> Password</label>     <input type="password" name="password1" id="password1" /> 
         <label for="password2">Ripeti Password</label>     <input type="password" name="password2" id="password2" /> 
         <label for="email"> Email</label>     <input type="text" name="email" id="email" /> 
         <input Type="submit" name="invia" id= "registrati" value="registrati"/>     </form>     <?php     } else {                     $codiceconferma md5(uniqid(rand()));  $usernamemysql_real_escape_string($_POST ['username']);     $password1mysql_real_escape_string($_POST ['password1']);     $password2mysql_real_escape_string($_POST ['password2']); $emailmysql_real_escape_string($_POST ['email']);                                       if($username =="" || $email==""){                     echo "Devi inserire tutti i dati";         } elseif($password1 =="" || $password2=="") {         echo "Devi inserire tutti i dati";         }elseif($password2 != $password1) {         echo "le password non sono uguali";         }else {         $recuperauseremail mysql_query("SELECT id FROM utenti WHERE username='$username' OR email ='$email'"); $contausermail=mysql_num_rows ($recuperauseremail);         if ($contausermail >0) {         echo "Nome utente o e mail gia disponibili";         } else {   $inviautentitempmysql_query ("INSERT INTO Utenti_temp(codiceconferma,username,password,email) VALUES('$codiceconferma','$username','$password2', '$email')");  if ($inviautentitemp){ $to=$email$message="ecco il codice di attivazione \r\n"$message.="clicca sul link per confermare la registrazione \r\n"$message.="http://127.0.0.1/sito/register.php?passkey=$codiceconferma";                                                                                   if (mail ($to,$message)) {                              echo"Per completare la registrazione clicca sul link di attivazione della e mail che ti è arrivata";                             } else { echo"Errore, link di attivazione non inviato";                             }  }else {              echo "Errore sql."; }   } } } } else{ $passkey =$_GET['passkey']; $sqlrecuperauser "SELECT * FROM utenti_temp WHERE codice_conferma ='$passkey'"$risultatouser mysql_query($sqlrecuperauser); if ($risultatouser){ $contauser =mysql_num_rows ($risultatouser); if ($contauser ==1) {   $rows =mysql_fetch_array($risultatouser); $username =$rows ['username']; $username$rows ['email']; $password$rows ['password']; $passwordcript =md5($password); $sqlconfermauser=mysql_query("INSERT INTO utenti (username, password, email) VALUES ('$username','$passwordcript','$email')");  if ($sqlconfermauser) {  echo "il tuo account è attivo";  $sqleliminadati =mysql_query ("DELETE FROM utenti_temp WHERE codiceconferma = '$passkey'");  } else {  echo"errore";  }  } } } ?>      </div>          </body>     </html>
    chi mi spiega o mi dice come posso fare a far registrare gli utenti??
    P.S. ho creato le 2 tabelle utenti_temp e utenti ne database my_dechiarap
    Spero ci siano tutte le informazioni utili e spero che mi possiate aiutare. Grazie
    I bravi programmatori sanno cosa scrivere, i migliori sanno cosa riscrivere (e riusare)

  2. #2
    Moderatore di PHP L'avatar di Alhazred
    Registrato dal
    Oct 2003
    Messaggi
    12,509
    Edita il post e metti un'istruzione per riga, con tutto il codice su una non si capisce niente,

  3. #3
    si scusa ecco il codice
    file config.php
    <?php
    Function pconnect () {
    mysql_connect ("localhost","dechiarap","");
    $dbconnection = mysql_connect('localhost', 'dechiarap', ''); mysql_select_db("my_dechiarap",$dbconnection );
    }
    ?>

    file register.php

    <?php
    Include 'config.php'

    ?>

    <?php
    if (!isset($_GET['passkey'])){

    if (!isset($_POST['invia'])) { ?>
    <form method="post" action="#" id="formregistrazione">
    <label for="username"> Username</label>
    <input type="text" name="username" id="username" />

    <label for="password1"> Password</label>
    <input type="password" name="password1" id="password1" />

    <label for="password2">Ripeti Password</label>
    <input type="password" name="password2" id="password2" />

    <label for="email"> Email</label>
    <input type="text" name="email" id="email" />

    <input Type="submit" name="invia" id= "registrati" value="registrati"/>
    </form>
    <?php
    } else {
    $codiceconferma = md5(uniqid(rand()));

    $username= mysql_real_escape_string($_POST ['username']);
    $password1= mysql_real_escape_string($_POST ['password1']);
    $password2= mysql_real_escape_string($_POST ['password2']);
    $email= mysql_real_escape_string($_POST ['email']);


    if($username =="" || $email==""){
    echo "Devi inserire tutti i dati";
    } elseif($password1 =="" || $password2=="") {
    echo "Devi inserire tutti i dati";
    }elseif($password2 != $password1) {
    echo "le password non sono uguali";
    }else {
    $recuperauseremail = mysql_query("SELECT id FROM utenti WHERE username='$username' OR email ='$email'");
    $contausermail=mysql_num_rows ($recuperauseremail);
    if ($contausermail >0) {
    echo "Nome utente o e mail gia disponibili";
    } else {
    $inviautentitemp= mysql_query ("INSERT INTO Utenti_temp(codiceconferma,username,password,email ) VALUES('$codiceconferma','$username','$password2', '$email')");

    if ($inviautentitemp){
    $to=$email;
    $message="ecco il codice di attivazione \r\n";
    $message.="clicca sul link per confermare la registrazione \r\n";
    $message.="http://127.0.0.1/sito/register.php?passkey=$codiceconferma";


    if (mail ($to,$message)) {
    echo"Per completare la registrazione clicca sul link di attivazione della e mail che ti è arrivata";
    } else { echo"Errore, link di attivazione non inviato";
    }
    }else {
    echo "Errore sql.";
    }
    }
    }
    }
    } else{
    $passkey =$_GET['passkey'];
    $sqlrecuperauser = "SELECT * FROM utenti_temp WHERE codice_conferma ='$passkey'";
    $risultatouser = mysql_query($sqlrecuperauser);
    if ($risultatouser){
    $contauser =mysql_num_rows ($risultatouser);
    if ($contauser ==1) {


    $rows =mysql_fetch_array($risultatouser);
    $username =$rows ['username'];
    $username= $rows ['email'];
    $password= $rows ['password'];
    $passwordcript =md5($password);
    $sqlconfermauser=mysql_query("INSERT INTO utenti (username, password, email) VALUES ('$username','$passwordcript','$email')");
    if ($sqlconfermauser) {
    echo "il tuo account è attivo";
    $sqleliminadati =mysql_query ("DELETE FROM utenti_temp WHERE codiceconferma = '$passkey'");
    } else {
    echo"errore";
    }
    }
    }
    }
    ?>

    </div>

    </body>
    </html>

    cosa ne pensi dov'è l'errore se c'è??
    I bravi programmatori sanno cosa scrivere, i migliori sanno cosa riscrivere (e riusare)

  4. #4
    allora nn c'è propio nessuno che mi riesce a spiegare dov'è l'errore???
    I bravi programmatori sanno cosa scrivere, i migliori sanno cosa riscrivere (e riusare)

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