Database design 使用数据库时遇到的PHP问题

Database design 使用数据库时遇到的PHP问题,database-design,Database Design,这是我的注册PHP代码,但每当我尝试注册时,都会出现以下错误: 注意:第44行的未定义变量:conn inm F:\Software\xampp\htdocs\LAB3\connectivity-sign-up.php 致命错误:在中对null调用成员函数query() F:\Software\xampp\htdocs\LAB3\connectivity-sign-up.php,第44行 如何解决这个问题?任何人都可以 这是错误的部分。您应该使用StackOverflow 从代码的外观来看,在回

这是我的注册PHP代码,但每当我尝试注册时,都会出现以下错误:

注意:第44行的未定义变量:conn inm F:\Software\xampp\htdocs\LAB3\connectivity-sign-up.php

致命错误:在中对null调用成员函数query()
F:\Software\xampp\htdocs\LAB3\connectivity-sign-up.php,第44行

如何解决这个问题?任何人都可以

  • 这是错误的部分。您应该使用StackOverflow

  • 从代码的外观来看,在回到PHP和MySQL之前,您可能应该进一步学习PHP和MySQL

  • 要回答您的问题,这是因为
    $conn
    在函数中是无效引用,(
    函数注册(){
    )您必须使用
    $GLOBALS[“conn”]

  • $query1=“选择用户名,电子邮件”
    将不起作用。您的查询中没有提供表名

  • 正如Phil在评论中所说,直接使用POST数据会打开一个巨大的SQL注入漏洞


  • 这是一个PHP错误。不是MySQL错误。直接从POST数据创建一个INSERT语句。大SQL注入安全性解决了这行中的问题:$query1=“SELECT userName,email”;它显示null。我正在使用mysqli,所以如何从表中选择数据?好的。非常感谢您的帮助。我将在下一次发布文章时看到该类别。
    $DB_HOST = "localhost";
    $DB_USER = "root";
    $DB_PASSWORD = "";
    $DB_NAME = "practice";
    
    $conn = new mysqli($DB_HOST,$DB_USER,$DB_PASSWORD,$DB_NAME);
    
    if ($conn->connect_errno) {
        printf("Connect failed: %s\n", $conn->connect_error);
        exit();
    }else{
        //printf("connected!!!");
    }
    
    
    
    function NewUser() { 
        $fullname = $_POST['name'];
        $userName = $_POST['user']; 
        $email = $_POST['email']; 
        $password = $_POST['pass']; 
        $query = "INSERT INTO websiteusers (fullname,userName,email,pass) VALUES ('$fullname','$userName','$email','$password')"; 
        $data = $conn->query($query); 
    
        if($data) { 
            echo "YOUR REGISTRATION IS COMPLETED..."; 
        }else{
            echo "something wrong!!!";
        }
    } 
    
    
    function SignUp() { 
        if(!empty($_POST['user'])){ 
    
            $query1 = "SELECT userName,email"; (line-44) //The Problem is in this line!!
            $data1 = $conn->query($query1);
            if($data1) { 
                NewUser(); 
                } else { 
                    echo "SORRY...YOU ARE ALREADY REGISTERED USER..."; 
                } 
            } 
    } 
    
    if(!isset($_POST['submit'])) {
    
        $result = $conn->query("SELECT * FROM websiteusers");
        while ($row = $result->fetch_assoc()) {
            printf ("%s (%s)\n", $row["userName"], $row["email"]);
        }
        //SignUp(); 
    }else{
        SignUp();
    }
    ?>