1

我是PhP的新手。我刚刚在树莓派中安装了 apache2 和 php5 环境。我创建了一个数据库 testdatabase 并尝试从 php 脚本连接到数据库。这是我的代码

用户输入电子邮件和密码

<html>
<body>
<form action='action.php' method="post">

Email: <input label="email" type="email" name="email" required="required"/>
<br>
Password: <input label="password" type="password" name="password" required="required"/>
<br>
<input type="submit" value="Submit"/>

</form>

</body>
</html>

然后脚本将数据插入表中

    <?php

$con=mysqli_connect("'localhost'",pi,"pwd","testdatabase");
// Check connection
if (mysqli_connect_errno())
  {
  echo "Failed to connect to MySQL: " . mysqli_connect_error();
  }

$sql="INSERT INTO users (email, password)
VALUES
('$_POST[email]','$_POST[password]')";

if (!mysqli_query($con,$sql))
  {
  die('Error: ' . mysqli_error($con));
  }
echo "1 record added";

mysqli_close($con);
?>

每当我单击提交时,我都会收到错误消息

本地主机无法处理此请求 http 错误 500(我可以使用 mysql -u pi -p 登录数据库)

我尝试访问 phpinfo,它工作正常

<?php phpinfo(); ?>

请指导我哪里做错了?

现在我只是想看看连接是否成功

<?php 
 /* Attempt MySQL server connection. Assuming you are running MySQL server with default setting (user 'root' with no password) */ 
 $link = mysqli_connect("localhost", "root", "admin"); 
 // Check connection 
 if($link === false)
 { die("ERROR: Could not connect. " . mysqli_connect_error()); } 
 // Print host information 
 echo "Connect Successfully. Host info: " . mysqli_get_host_info($link); 
 ?>

它给出了同样的信息。我什至无法连接到数据库。我需要设置一些环境变量吗?

4

2 回答 2

1

尝试这个

$con=mysqli_connect("localhost","pi","pwd","testdatabase");

删除单引号

于 2018-05-21T08:54:55.770 回答
0

这是文件的权限问题加上一些代码级别的问题,因为最后我能够运行@IOGAN 提供的代码。截至目前,我将所有文件的权限更改为 777 (它是 770 )将针对允许的最低文件权限进行命中和试用。

于 2018-05-21T11:44:36.453 回答