[英]Trying to output a mysql database in php
I'm trying to test outputting data from a database table using phpmyadmin in php. 我正在尝试使用PHP中的phpmyadmin测试从数据库表输出数据。 For some reason it isn't working though, no errors involved. 由于某种原因它不起作用,没有涉及错误。 What am I doing wrong here? 我在这做错了什么?
Here is a picture of my database: 这是我的数据库的图片:
Note: This database is filled with fake information, no real e-mail addresses are used. 注意:此数据库充满了虚假信息,没有使用真实的电子邮件地址。
Here is my code: 这是我的代码:
<?php
include "cs234DbConnect.inc.php";
$dbc = mysqli_connect(DBHOST, DBUSER, DBPWD, DBNAME);
$error = mysqli_connect_error();
if($error != null){
$output= "<p> Unable to connect to database<p>" . $error;
exit($output);
}
$query = mysqli_query($dbc, "SELECT * FROM site7_customers WHERE FirstName = 'Leonie'") or die(mysqli_error($dbc));
while($rows = mysqli_fetch_array($query)){
$FirstName = $rows['FirstName'];
$LastName = $rows['LastName'];
$Email = $rows['Email']
echo "$FirstName $LastName<br>$Email<br><br>";
}
mysqli_close($dbc);
?>
Here is how I'm connecting: 这是我如何连接:
<?php
/* File: cs234DbConnect.inc.php
*/
define('DBNAME', 'mtingle');
define('DBHOST', 'localhost');
define('DBUSER', 'mtingle');
define('DBPWD'', 'mypassword');
define('DBCONN', 'mysql:host=' . DBHOST . ';dbname=' . DBNAME);
?>
Thank you in advance. 先感谢您。
As per your originally posted question/code should any be wondering. 根据你最初发布的问题/代码应该有任何疑问 。
The reason being is that you're not connecting to your query. 原因是您没有连接到您的查询。
$query = mysqli_query("SELECT...
missing $dbc
connection variable to it. 缺少$dbc
连接变量。
do 做
$query = mysqli_query($dbc,"SELECT...
Having used 使用过
or die(mysqli_error($dbc))
to mysqli_query()
would have thrown you an error. or die(mysqli_error($dbc))
到mysqli_query()
会抛出一个错误。
Edit: after you posted your cs234DbConnect.inc.php
content 编辑:发布cs234DbConnect.inc.php
内容后
Remove define('DBCONN', 'mysql:host=' . DBHOST . ';dbname=' . DBNAME);
删除define('DBCONN', 'mysql:host=' . DBHOST . ';dbname=' . DBNAME);
from inside your file, that is PDO syntax. 从文件内部,即PDO语法。
and define('DBPWD'', 'mypassword');
并define('DBPWD'', 'mypassword');
(extra quote) (额外报价)
to define('DBPWD', 'mypassword');
define('DBPWD', 'mypassword');
you also missed a semi-colon at the end of $Email = $rows['Email']
您还错过了$Email = $rows['Email']
末尾的分号
Thanks Meda. 谢谢Meda。
Plus, using your present method is open to SQL injection, use prepared statements , or PDO with prepared statements , they're much safer . 另外,使用您现有的方法可以使用 SQL注入, 使用预处理语句或PDO和预处理语句 , 它们更加安全 。
Plus, that missing semi-colon should have produced a parse error. 另外,丢失的分号应该产生解析错误。
Add error reporting to the top of your file(s) which will help find errors. 将错误报告添加到文件的顶部,这将有助于查找错误。
error_reporting(E_ALL);
ini_set('display_errors', 1);
Sidenote: Error reporting should only be done in staging, and never production. 旁注:错误报告应该只在暂存中完成,而不是生产。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.