【问题标题】:PHP echo break tagPHP 回显中断标记
【发布时间】:2017-01-06 17:54:25
【问题描述】:

在我的 PHP 脚本中,有 3 个基于条件的回显

echo "Error"
echo "User already existed"
echo "Success"

其中一个回显将传递给我的 Android 应用程序if (s.equals("Success")),其中s 是回显消息。

但是根据logcat我注册成功的时候得到的echo是<br />。对于User already existed没有问题。

由于s 不是Success,我无法启动另一个依赖于字符串的活动。谁能解释一下 break 标签是如何得到回应的?不过,注册信息已成功插入数据库。

elseif ($roleID == "C") {
    $sql6 = "SELECT runnerID FROM tr_customer WHERE customerID = '$newID'";
    $check4 = mysqli_fetch_array(mysqli_query($con,$sql6));
    if(!isset($check4)) {
        // add into db
        $customerID = $roleID . $newID;
        $sql7 = "INSERT INTO tr_customer(customerID, name, phoneNo, locationID, roleID, email) VALUES ('$customerID', '$name', '$phoneNo', '$locationID', '$roleID', '$email')";
        if(mysqli_query($con,$sql7)) {
            echo "Success";
        }
    } else {
        $newID = checkExist();
}

【问题讨论】:

  • 好吧,如果您不发布实际代码,我们应该如何回答?我并不是说断章取义的三行不完整。
  • 实际代码太长了,不过没关系,我会添加我认为相关的代码
  • 当然,显然只有代码的相关部分。
  • @arkascha 添加了代码
  • 与手头的问题无关...但是如果此代码是由客户端提交的数据提供的,那么您面临 sql 注入攻击的高风险... 为什么不利用准备好的优势声明和参数绑定,无论您在哪里看到的广告?

标签: php android


【解决方案1】:

我会检查定义变量的代码。如果您可以将那部分代码作为编辑发布,那么也许有人也可以为您审查它。这里没有足够的信息来辨别您的错误来自哪里。

编辑:

考虑更改检查成功更新的方式。

$result = mysqli_query($con,$sql7);
    if(mysqli_num_rows($result) == 1){
       echo "Success";
    }

【讨论】:

  • 考虑更改检查成功更新的方式。我将编辑我的答案以显示一个示例。
  • 不是问题的答案!
  • 现在好了,我无法评论。那么你希望我以后如何与他沟通呢?
  • @MattB。结果还是一样。 <br /> 已打印。
  • 对于INSERT 语句,mysqli_query() 将返回 TRUEFALSE,但从不结果对象。
猜你喜欢
  • 2012-03-01
  • 2016-01-02
  • 1970-01-01
  • 2021-12-15
  • 2012-01-02
  • 2022-01-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多