2016-09-01 2 views
0

Так им сделать веб-игры приложение Моя проблема заключается в мои register.php не вставляя пользователей в базе данных, пожалуйста, нужна помощь по дороге им просто новичок в PHP Спасибоданных не вставляя в базу данных игры resgistration

Вот Код:

<?php 
    require_once('mysql_conn.php'); 
    $Username = mysql_real_escape_string($_POST['Username']); 
    $Password = md5(mysql_real_escape_string($_POST['Password'])); 
    $Email = mysql_real_escape_string($_POST['Email']); 

    $query_check ="SELECT user_name FROM account_info WHERE user_name = '$Username'"; 
    $retval_check = mysql_query($query_check, $conn); 

    if($Username == "" || $Password == "" || $Email == ""){ 
     echo"Please fill the field"; 
    } else{ 
     if(mysql_num_rows($retval_check)){ 
      echo"Username Already Taken"; 
     } else { 
      $query = "INSERT INTO account_info(user_name,user_passemail) VALUES ('$Username','$Password','$Email');"; 
      $retval = mysql_query($query, $conn); 

      echo "<script>"; 
      echo "alert('Thank you for registering Enjoy the game !')";   
      echo "</script>"; 

      echo "<script>"; 
      echo 'location.href = "menu.html";'; 
      echo "</script>"; 
     } 
    } 

    mysql_close($conn); 

?> 
+1

вы получаете какие-либо ошибки? –

+1

Функции 'mysql_' устарели - избегайте боли и обновляете свой код до' mysqli' или 'pdo' – RamRaider

+1

по запросу $ вы передаете 3 значения в базе данных, но вы выбрали только два столбца –

ответ

4

Изменение:

$query = "INSERT INTO account_info(user_name,user_passemail) VALUES ('$Username','$Password','$Email');"; 

To:

$query = "INSERT INTO account_info(user_name,user_pass,email) VALUES ('$Username','$Password','$Email');"; 

Вы забыли добавить запятую ""

+1

Спасибо, что ответили – user6543208

+1

Np рад помочь – Melchizedek

0

неправильно

$query = "INSERT INTO account_info(user_name,user_passemail) VALUES ('$Username','$Password','$Email');"; 

правильно

$query = "INSERT INTO account_info(user_name,user_pass,email) VALUES ('$Username','$Password','$Email')"; 
2

Предупреждение mysql_query, mysql_fetch_array, mysql_connect и т.д .. расширения были устаревшими в PHP 5.5 .0, и он был удален в PHP 7.0.0. Вместо этого следует использовать расширение MySQLi или PDO_MySQL.

Соскучился по ком между USER_PASS и электронной почтой в имени столбца

$query = "INSERT INTO account_info(user_name,user_pass,email) VALUES ('$Username','$Password','$Email');"; 

попытки MySQLi

  //db connection 

      global $conn; 

       $servername = "localhost"; //host name 

       $username = "username"; //username 

       $password = "password"; //password 

       $mysql_database = "dbname"; //database name 

      //mysqli prepared statement 

       $conn = mysqli_connect($servername, $username, $password) or die("Connection failed: " . mysqli_connect_error()); 

       mysqli_select_db($conn,$mysql_database) or die("Opps some thing went wrong"); 


     //require_once('mysql_conn.php'); 

     $Username = mysqli_real_escape_string($_POST['Username']); 
     $Password = md5(mysqli_real_escape_string($_POST['Password'])); 
     $Email = mysqli_real_escape_string($_POST['Email']); 

     //$query_check ="SELECT user_name FROM account_info WHERE user_name = '$Username'"; 
     // $retval_check = mysqli_query($query_check, $conn); 

     if(!empty($Username)) 
     { 


      $stmt = $conn->prepare("SELECT user_name FROM account_info WHERE user_name =? "); 

          $stmt->bind_param('s',$Username); 

          The argument may be one of four types: 

          i - integer 
          d - double 
          s - string 
          b - BLOB 
          //change it by respectively 

          $stmt->execute(); 

          $get_result =$stmt->get_result(); 

          $row_count= $get_result->num_rows; 

          //$row_count= $stmt->affected_rows; 

          $stmt->close(); 
          //$conn->close(); 




     }      

     if($Username == "" || $Password == "" || $Email == ""){ 
      echo"Please fill the field"; 
     } else{ 
      if($row_count>0){ 
       echo"Username Already Taken"; 
      } else { 
       //$query = "INSERT INTO account_info(user_name,user_pass,email) VALUES ('$Username','$Password','$Email');"; 
                     ^^^^^ 
       //$retval = mysql_query($query, $conn); 

       $stmt1 = $conn->prepare("INSERT INTO account_info(user_name,user_pass,email) VALUES (?,?,?)"); 

          $stmt->bind_param('sss',$Username,$Password,$Email); 

          The argument may be one of four types: 

          i - integer 
          d - double 
          s - string 
          b - BLOB 
          //change it by respectively 

          $stmt1->execute(); 

          //$get_result1 =$stmt1->get_result(); 

          //$row_count1= $get_result1->num_rows; 

          $row_count1= $stmt1->affected_rows; 

          $stmt1->close(); 
          $conn->close(); 
          if($row_count1>0) 
          { 
           echo "<script>"; 
           echo "alert('Thank you for registering Enjoy the game !')";   
           echo "</script>"; 

          } 
          else 
          { 
           echo "<script>"; 
           echo "alert('registeration failed')";   
           echo "</script>"; 


          } 


          echo "<script>"; 
          echo 'location.href = "menu.html";'; 
          echo "</script>"; 
      } 
     } 
Смежные вопросы