程序没有做任何事情

时间:2017-05-04 05:24:46

标签: php mysql procedure

我在mySql中创建了一个过程。它看起来像这样。

enter image description here

我从php调用了这个程序。

在此调用之后,该表仍然为空,我不知道为什么。

我检查过的问题:

  1. 变量名称
  2. 连接
  3. 语法(我认为是正确的语法)
  4. 更新:Php代码

    <?php
    $servername = "localhost";
    $username = "root";
    $password = "";
    $dbName = "shoppingcartdb";
    
    // Create connection
    $conn = new mysqli($servername, $username, $password, $dbName);
    
    // Check connection
    if ($conn->connect_error) {
        die("Connection failed: " . $conn->connect_error);
    }
    
    $sql = "INSERT INTO address (Address, PostalCode, City, County, Phone, Fax)
    VALUES ('".$_POST["address"]."', '".$_POST["p_code"]."', '".$_POST["city_sector"]."', '".$_POST["county"]."', '".$_POST["phone"]."', '".$_POST["fax"]."')";
    $conn->query($sql);
    $sql = "CALL Insert_User('".$_POST["username"]."', '".$_POST["f_name"]."', '".$_POST["l_name"]."', '".$_POST["psw"]."', '".$_POST["email"]."')";
    if(!$conn->query($sql))
    	echo "failed";
    $conn->close();
    ?>

    更新:程序 Code ScreenShot

1 个答案:

答案 0 :(得分:0)

  1. 您已将输入和局部变量与会话变量混淆。 @id_addid_add不同,@f_name也不是同一个广告f_name。因此,您尝试在表中插入空值。

  2. 如果在查询之前和之后设置了分隔符,我无法在屏幕截图中看到。请检查一下。

  3. 通过从phpmyadmin进行测试来检查存储过程。