MySQL数据库不能正常工作

问题描述:

我正在学习关于MySQL的一门课程,我正在学习如何让用户输入一段代码(电子邮件和密码),脚本中的信息将放入数据库在phpMyAdmin上。我似乎无法得到它的工作?当我通过错误检查器时,我的代码没有任何错误。我对PHP和MySQL也是全新的。我知道它可以找到数据库,因为我可以更新现有的数据。MySQL数据库不能正常工作

<?php 

$link = mysqli_connect("host", "username", "password", "username"); 

if (mysqli_connect_error()) { 

    die ("There was an error connecting to the database"); 

} 

$query = "INSERT INTO `users` (`email`, `password`) VALUES('email', 'password')"; 

mysqli_query($link, $query); 

$query = "SELECT * FROM users"; 

if ($result = mysqli_query($link, $query)) { 

$row = mysqli_fetch_array($result); 

echo "Your email is ".$row[1]." and your password is ".$row[2]; 

} 

?> 
+2

基于零的数组,以$ row [0]和$ row [1]开始 –

+0

@RicardoOrtegaMagaña确实,但[1]'应该至少显示一些内容,而这不是真正的问题。他们声明插入不起作用。按标题*“输入数据库不工作”*。 –

+0

我在这里看不到任何错误。你说你通过一个错误检查器,是什么?我觉得你没有告诉我们真实/完整的故事。你的价值观包含了你想要输入除字符串文字之外的东西。 –

为什么你不尝试使用PHP接收它们?

而只是让

$email= $POST['email'] 
$password= $POST['password'] 

,并更改查询

$query = "INSERT INTO `users` (`email`, `password`) VALUES(" .$email. ", ". $password.")"; 
+3

我必须诚实;如果我能降低这一点,我会的。它充满了错误。 –

+0

为什么你不能downvote? –

+0

http://stackoverflow.com/help/formatting – Barmar

创建一个完善的版本。核实。

<?php 

    $link = mysqli_connect("host", "username", "password", "username"); 

    if (mysqli_connect_error()) { 

     die ("There was an error connecting to the database"); 

    } 

    $query = "INSERT INTO `users` (`email`, `password`) VALUES('email', 'password')"; 

    $result = mysqli_query($link, $query); 
    if($result != false) 
    { 
     echo "The record has been successfully inserted.<br>"; 
    } 
    else 
    { 
     echo "Error Occured in the INSERT query.<br>Error : ".mysqli_error($link); 
    } 

    $query = "SELECT * FROM users"; 
    $result = mysqli_query($link, $query); 
    if($result != false) 
    { 
     echo mysqli_num_rows($result)." Records found.<br>"; 
     while($rows = mysqli_fetch_array($result)) 
     { 
      echo $rows["email"]."<br>"; 
     } 
    } 
    else 
    { 
     echo "Error Occured in the SELECT query.<br>Error : ".mysqli_error($link); 
    } 


    mysqli_close($link); 

    ?> 
+0

Nandan,它给了我这个警告信息 - 警告:mysqli_error()期望参数1为mysqli,null在第20行的服务器url中给出。012HER错误在INSERT查询中发生错误。 错误:找到1记录。 – Colton

+0

将'$ conn'替换为'$ link' –

+0

@Colton,是PaulSpiegel是对的,用$ link替换$ conn。我经常使用$ conn作为连接对象。无论如何,我已经更新了答案,检查它。 –

更新

原来我没设置AUTO_INCREMENT设置,因此使我建立了我的数据库不正确的方式!他在我正在经历的教程中建立了另一个数据库,并且我发现他是这么做的。感谢大家帮助我解决问题的努力!