У меня есть таблица, в которую я пытаюсь добавить inline-edit, но я действительно новичок в ajax. Я подозреваю, что что-то не так с dataString
моего кода Ajax, но я не могу его найти. Сам код работает, но у меня возникают проблемы с отправкой данных.Публикация inline-table на sql
Прошу прощения, если этот вопрос задан раньше, я действительно подчеркиваю это. Если кто-нибудь скажет мне, что мне делать, я буду очень признателен.
Database
rowid | Person
4 | mike
12 | peterson
PHP
//Every row in the sql table has an row id
<php $id = $row['rowid']; ?>
<tr id="<?php echo $id ?>" class="tredit>
<td>
<span id="person_<?php echo $id ?>" class="text"><?php echo $row["Person"] ?></span>
<input type="text" class="ip" id="person_ip_<?php echo $id ?>" value="<?php echo $row["Person"] ?>">
</td>
</tr>
Ajax
$(document).ready(function(){
$(".tredit").click(function(){
var ID=$(this).attr('id');
$("#person_"+ID).hide();
$("#person_ip_"+ID).show();
}).change(function(){
var ID=$(this).attr('id');
var first=$("#person_ip_"+ID).val();
var dataString = 'id='+ ID +'&person='+first;
//alert(dataString);
$("#person_"+ID).html('<img src="load.gif" />');
if(first.length > 0){
$.ajax({
type: "POST",
url: "post_table.php",
data: dataString,
cache: false,
success: function(html){
$("#klant_"+ID).html(first);
}
});
}else{
alert('Voer iets in');
}
});
});
post_t able.php
<?php
$person= $_POST['person'];
$id = $_POST['id'];
//This is where I get stuck, I don't know how to extract data from the dataString to insert into an update
$query = "update people set Person='$person' where id='$id'";
mysql_query($query, $con);
?>
в PHP, ваш 'dataString' бы получить доступ с помощью' $ _POST [ 'идентификатор'] 'и' $ _POST [ 'человек'] '. обратите внимание, что вы захотите дезинформировать эти данные для предотвращения внедрения SQL. – Sean
также, если вы делаете строку для данных, вам нужно '&' между вашими параметрами - var dataString = 'id =' + ID + '& person =' + first; ', как если бы это был URL-адрес – Sean