【发布时间】:2016-04-03 06:42:55
【问题描述】:
我有这个 php 文件,我想用 json 编码回显一个 ticketnumber 位于其中的数组,这意味着我想在 isset POST 这个数组的 ticketnumber 时只打印一个数组,但我尝试过,每次我得到错误如何解决这个问题另外我使用了循环(while)所以它对一个数组是否正确?
<?php
define('HOST', 'localhost');
define('USER', 'root');
define('PASS','');
define('DB', 'ala');
$con = mysqli_connect(HOST,USER,PASS,DB) or die ('unable to connect');
if ($_SERVER ['REQUEST_METHOD']=='POST') {
$ticketnumber = $_POST['ticketnumber'];
$sql = " SELECT * FROM contact WHERE ticketnumber = '$ticketnumber' ";
$res = mysqli_query($con, $sql);
$result = array();
while($get = mysqli_fetch_array($res))
{
array_push($result,array('ticketnumber' =>$get[0], 'subject' =>$get[1],'response' =>$get[2]));
}
if(isset($get)){
echo json_encode(array("responseticket"=>$result));
} else {
echo " error";
}
}
?>
【问题讨论】:
-
您遇到什么错误?另外,请阅读SQL Injection,并了解如何更改您的代码,使其不易受此攻击。目前您的应用程序(和数据库)存在风险。
-
$ticketnumber = (int)$_POST['ticketnumber'];