2016-04-14 41 views
0

我的fetch_array存在問題。我一直得到沒有找到記錄的回報。對於我所看過的每一件事,在我看來,這個代碼應該可以工作。對不起,即時通訊新的PHP Web開發。PHP從tbl/fetch array issue中選擇

$JobNumber = NULL; 
if($_SERVER['REQUEST_METHOD'] == "POST") 
{ 
$JobID = $_POST['jobid']; 
include('pmconnect.php'); 
$sql="SELECT * FROM tblJobMaster WHERE JobNumber=" . $JobID; 
$result=$conn->query($sql); 
if ($result->num_rows==0) 
    { 
    echo "Record not found.<br>"; 
    die(0); 
    } 
$row=$result->fetch_array(); 

echo '<table style="text-align: left; width: 100%;" border="1" cellpadding="2" cellspacing="2">'; 
echo "<tbody>"; 
echo "<tr>"; 
echo '<td style="vertical-align: top; text-align: right;">Job Number:<br>'; 
echo "</td>"; 
echo '<td style="vertical-align: top;">' .$row[0] . '<br>'; 
echo "</td>"; 
echo '<td style="vertical-align: top; text-align: right;">Engineer:<br>'; 
echo '</td>'; 
echo '<td style="vertical-align: top;">' . $row[3] .'<br>'; 
echo '</td>'; 
echo "</tr>"; 
echo "<form action=pmAssignEngineer2.php method=post id=usrform>"; 
echo "<input type=hidden name=JobID value=" . $JobID . ">"; 
echo "<input type=submit value=\"Update\" name=lookup>"; 
echo "</td>"; 
echo "</tr>"; 
echo "</form>"; 
echo "</tbody>"; 

} 

else 
{ 
echo "<form action=pmAssignEngineer.php method=post>"; 
echo "<table border=2>"; 
    echo "<tr>"; 
     echo "<td>Job Number:</td>"; 
     echo "<td><input type=text name=JobID></td>"; 
    echo "</tr>"; 
echo "</table>"; 
echo "<input type=submit value=\"Lookup\" name=lookupQ><br>"; 
echo "</form>"; 
} 
+0

'名稱= JobID'不等於'$ _ POST [ '作業ID']'它必須是' $ _POST ['JobID']' – Saty

+0

您的字段名稱是'JobID',但您的$ _POST'中的鍵是'jobid'。 – syck

+2

@RuchishParikh mysql擴展在PHP5中被棄用,並在PHP7中停用。請使用mysqli或PDO,不建議使用mysql擴展。謝謝。 – syck

回答

0

HTML元素髮布到$_POST如果形式方法是post

元素名稱是鍵,值是數組值。

而且鍵區分大小寫。

就你而言,你的元素名稱爲JobID,你指的是jobid

顯然,$_POST的鍵不匹配,因爲jobidJobID是不同的。

<input type=text name=JobID> 

因此,更新以下行:

$JobID = $_POST['jobid']; 

$JobID = $_POST['JobID'];