2016-12-23 2 views
0

У меня есть форма регистрации HTML, когда я отправляю форму, где появляется код PHP, и данные не вставляются в базу данных, я сделал свою базу данных с помощью phpMyAdmin, что мне делать?html form, PHP вставить данные в базу данных не работает?

Вот мой PHP код:

 <?php 
     $con=mysqli_connect('localhost','root',''); 
     $db=mysqli_select_db($con,'research_sys'); 
    if ($con) { 
     echo "good"; 
     }else { 
     die('error'); 
     } 
     if(isset($_POST['submit'])){ 
$Fname = mysqli_real_escape_string($con,$_POST["Fname"]); 
$Lname = mysqli_real_escape_string($con,$_POST["Lname"]); 
$email = mysqli_real_escape_string($con,$_POST['email']); 
$password = mysqli_real_escape_string($con,$_POST['password']); 
    $sql = mysqli_query($con,"INSERT INTO `research_sys`.`researcher` (Re_fname,Re_lname,Re_mobile,Re_password) values ('$Fname','$Lname','$email','$password ')"); 

      if (mysqli_query($sql)){ 
      echo "insert"; 
      } else { 
       echo "error" .$sql ."<br>". mysqli_error($con); 
       }   
} 
?> 

здесь моя регистрация HTML код

  <form method="post" action="connect.php"> 
       <legend class="center">Register </legend> 
       <br> 
       <div> 

        <input type="text" name="Fname" placeholder="First Name"/> 
       </div> 
       <div> 

        <input type="text" name="Lname" placeholder="Last Name"/> 
       </div> 

       <div> 
        <input type="text" name="email" placeholder="Email"/> 
       </div> 

       <div> 
        <input type="password" name="password" placeholder="Password"/> 
       </div> 

       <div> 
        <input type="password" name="con_password" placeholder="Password confirm"/> 
       </div> 
       <input type="submit" name="submit" value="submit"/> 
      </form> 

ответ

1

Посмотрите на следующее:

$sql = mysqli_query($con,"INSERT INTO `research_sys`.`researcher` 
     ^^^^^^^^^^^^ function 

     (Re_fname,Re_lname,Re_mobile,Re_password) 
     values ('$Fname','$Lname','$email','$password ')"); 
                ^space 

    if (mysqli_query($sql)){ 
     ^^^^^^^^^^^^ function 

Вы используете что mysqli_query() функция дважды, удалить один и только:

if ($sql){...} 

и mysqli_error($con) должны были сообщить вам об этом.

Если это не ошибка, значит, вы можете использовать это как file:///, а не http://localhost.

Edit:

"У меня есть HTML регистрационную форму ИСВН я отправить форму код PHP apears"

Это из-за того, что я написал выше, прежде чем цитировать вас. Вам нужно запустить это с веб-сервера с установленным и запущенным php/mysql и как http://localhost.

Также удалите пробел в этом '$password '. Это пространство считается символом.

  • Дважды проверьте названия столбцов. Кажется, что-то не соответствует (Re_fname,Re_lname,Re_mobile,Re_password)Re_mobile, и вы ссылаетесь на адрес электронной почты '$email' в VALUES.

Вы также, кажется, сохраняете текстовые пароли; не, это небезопасно, если вы намерены продолжать жить с этим. Используйте password_hash() и подготовленный отчет.


Сноски:

$con=mysqli_connect('localhost','root',''); 
    $db=mysqli_select_db($con,'research_sys'); 

Вы можете укоротить, что, используя все 4 аргумента в mysqli_connect():

$con=mysqli_connect('localhost','root', '', 'research_sys'); 
Смежные вопросы