繁体   English   中英

试图在php中输出一个mysql数据库

[英]Trying to output a mysql database in php

我正在尝试使用PHP中的phpmyadmin测试从数据库表输出数据。 由于某种原因它不起作用,没有涉及错误。 我在这做错了什么?

这是我的数据库的图片:

数据库

注意:此数据库充满了虚假信息,没有使用真实的电子邮件地址。

这是我的代码:

    <?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);


    ?>

这是我如何连接:

<?php
    /* File: cs234DbConnect.inc.php
    */
    define('DBNAME', 'mtingle');
    define('DBHOST', 'localhost');
    define('DBUSER', 'mtingle');
    define('DBPWD'', 'mypassword');

    define('DBCONN', 'mysql:host=' . DBHOST . ';dbname=' . DBNAME);
    ?>

先感谢您。

根据你最初发布的问题/代码应该有任何疑问

原因是您没有连接到您的查询。

$query = mysqli_query("SELECT...

缺少$dbc连接变量。

$query = mysqli_query($dbc,"SELECT...

使用过

or die(mysqli_error($dbc))mysqli_query()会抛出一个错误。

编辑:发布cs234DbConnect.inc.php内容后

删除define('DBCONN', 'mysql:host=' . DBHOST . ';dbname=' . DBNAME); 从文件内部,即PDO语法。

define('DBPWD'', 'mypassword'); (额外报价)

define('DBPWD', 'mypassword');

您还错过了$Email = $rows['Email']末尾的分号

谢谢Meda。


另外,使用您现有的方法可以使用 SQL注入, 使用预处理语句PDO和预处理语句它们更加安全


另外,丢失的分号应该产生解析错误。

错误报告添加到文件的顶部,这将有助于查找错误。

error_reporting(E_ALL);
ini_set('display_errors', 1);

旁注:错误报告应该只在暂存中完成,而不是生产。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM