我在非重要環境中工作,只能使用ajax請求交換數據。不幸的是,ajax只能識別POST和GET方法。我需要聽起來像Ajax或PHP中的更新來使我的應用程序有效。使用AJAX數據更新數據庫
的概念是這樣的:
我使用AJAX來接收已經由用戶創建的數據,然後將它保存到MySQL和PHP。用戶可以創建,編輯和保存該數據。到目前爲止,我用POST ajax方法僞造它。但是這會產生問題,因爲每當用戶編輯和保存數據時,它都會不斷更新舊數據庫而不是更新舊數據庫。
有什麼辦法解決這個問題?
我在非重要環境中工作,只能使用ajax請求交換數據。不幸的是,ajax只能識別POST和GET方法。我需要聽起來像Ajax或PHP中的更新來使我的應用程序有效。使用AJAX數據更新數據庫
的概念是這樣的:
我使用AJAX來接收已經由用戶創建的數據,然後將它保存到MySQL和PHP。用戶可以創建,編輯和保存該數據。到目前爲止,我用POST ajax方法僞造它。但是這會產生問題,因爲每當用戶編輯和保存數據時,它都會不斷更新舊數據庫而不是更新舊數據庫。
有什麼辦法解決這個問題?
你可以基本上任何GET或POST更新數據庫。 GET & POST只是將數據傳遞給服務器的方法。
您的php函數應該處理更新或創建數據庫。您可能需要傳遞ID並檢查ID是否存在,然後更新數據庫。
編輯:添加樣品邏輯
<?php
//Assume this is function that your ajax called
function processData()
{
$id = $_POST['id'];
$name = $_POST['name'];
if ($id)
{
//Update the name if ID exist
}
else
{
//Create new data with Name above
}
}
你可以改變你的SQL?通常的情況如下: -
insert into `TABLE` set (`field1`,`field2`) values ('value1','value2')
on duplicate key update
`field1`='value1',
`field2`='value2',
`field3`='value3';
聽起來像'更新'? GET和POST對於你想要做的事情來說是理想的,爲什麼要重新發明輪子並想出一個不存在的方法?
但它確實存在... PUT – charlietfl
是的,PUT也是另一種方法 - 更適合通過imho上傳文件。看看http://www.w3.org/Protocols/rfc2616/rfc2616-sec9.html - 這裏有用的信息 – RamRaider
PUT廣泛用於REST方法 – charlietfl
是的,我認爲你是對的,你有一些參考或指導呢? – Pius