我正在一个项目中,我必须验证用户的手机号码。我已经生成了otp,并将其成功交付给了移动用户。但是otp变量在更新mysql查询中不显示任何值。在回显时,它会打印结果。

代码在这里:

if(isset($_POST['mobile']))
{
    include_once("connectionfile.php");
    $string = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $string_shuffled = str_shuffle($string);
    $otpCode = substr($string_shuffled, 1, 7);
    echo '<br/>'. $otpCode;
    file_get_contents("http://www.sms99.com/ComposeSMS.aspx?username=sample&password=sample&sender=sample&to=$payMob&message=$password&priority=1&dnd=1&unicode=0");
    echo '</br>'.$otpCode;
    $optQry = "update clients set mobile='$payMob', address='$payAddress', city='$payCity', country='$payCountry', opt_code='$optCode' where id = '$payClient'" ;
    echo $optQry;
    $qryRes = mysqli_query($con, $optQry)or die("query Error");
    print_r($optRes);
}


输出画面:


  1E2ewz7
  
  更新客户端设置为mobile ='4422336699',address ='new way',
  city ='fkldsjl',country ='IN',opt_code =''其中id ='131'

最佳答案

看来您的变量中有错字。

$optCode中的$optQry更改为$otpCode

10-04 10:53