我正在嘗試一些關於Ajax,JQuery和PHP的東西。如何調試我的Ajax/jQuery應用程序?
我的JavaScript代碼(pop.php位於正確的)我的HTML/PHP代碼在同一個頁面
<script type="text/javascript">
$('.nameclick').click(function()) {
ev.preventDefault();
$.ajax({
typ: "POST"
url: "/pop.php"
data: {id=$(this).data("formid")}
success: function(result){
alert(result);
} else {
alert("test");
}
});
});
</script>
部分(此代碼工作正常打印出來我找表):
<table class="data-table">
<thead>
<tr>
<th>Servicenummer</th>
<th>Kund</th>
<th>Uppgift</th>
<th>Status</th>
<th>Inlämnad</th>
</tr>
</thead>
<tbody>
<?php
$no = 1;
$total = 0;
while ($row = mysqli_fetch_array($query))
{
echo '<tr>
<td><div id="clickMe">'.$row['service'].'</div></td>
<td><a href="#" class="nameclick" data-formid="'.$row['ID'].'">'.$row['name'].'</a></td>
<td>'.$row['Drakt1'].'<br>'.$row['Drakt2'].'<br>'.$row['Drakt3'].'<br>'.$row['Drakt4'].'<br>'.$row['Drakt5'].'<br>'.$row['Drakt6'].'<br>'.$row['reg1'].'<br>'.$row['flaska1'].'<br>'.$row['dator1'].'</td>
<td>'.$row['Service_Status'].'</td>
<td>'.$row['date'].'</td>
</tr>';
$no++;
}?>
</tbody>
</table>
而且我pop.php:
<?php
require 'connection.php';
$conn = Connect();
$name = $conn->real_escape_string($_POST['name']);
$email = $conn->real_escape_string($_POST['email']);
$telephone = $conn->real_escape_string($_POST['telephone']);
$sql = 'SELECT name, email, telephone FROM Service_Form WHERE id = "10"';
$query = mysqli_query($conn, $sql);
if (!$query) {
die ('SQL Error: ' . mysqli_error($conn));
}
?>
<?php
while ($row = mysqli_fetch_array($query))
{
echo $row['name'];
echo $row['email'];
echo $row['telephone'];
}
?>
此刻,當我點擊我的正常的頁面我我的鏈接沒有得到任何東西,根本沒有警報,但我的pop.php正確輸出了值,我希望...我知道我必須改變我的ID =「10」,但我不確定是什麼,可以它是格言?
我在這裏做錯了什麼?
我想要什麼:
- 數據庫
- 當我在表中單擊名稱應該顯示一個警告(或類似的東西)與下面的值的表從表中顯示了姓名,電子郵件和電話號碼(它們也存儲在數據庫表格中,但不在網站表格中)。
這'數據:{ID = $(這個).data(「formid」)}'是無效的語法,試試'data:{id:$(this).data(「formid」)}' – Titus
'$('。nameclick')。click(function() ){ ev.preventDefault ();' - 你忘了定義'ev',所以它不會停止鏈接的正常行爲。 '('。'nameclick')。click(function(ev))ev.preventDefault(); '是對的。這不是問題的根源,但值得注意。這可能會導致JS錯誤 - 請在開發人員工具中檢查瀏覽器的控制檯。 – ADyson
也不清楚爲什麼pop.php試圖讀取稱爲名稱,電子郵件,電話的POST值,因爲您的ajax不會將任何這些值傳遞給它。只有ID作爲輸入被傳遞(並且正如上面註釋所說的,它沒有被正確傳遞)。如果您想使用它作爲變量來確定查詢輸出,您應該查找$ _POST [「id」]並將其包括在您的查詢中,而不是「10」。 – ADyson