Ben PHP kullanarak bir JSON dizesini ayrıştırmak çalışıyorum, JSON bu formatta jQuery $.ajax
, [{"value":"59"},{"value":"7"},{"value":"46"}]
kullanarak PHP dosyası gönderildi, ama alır ben bu hatayı almaya devam bazı garip nedenle "Invalid argument supplied for foreach()"
, burada benim PHP ve jQuery kodudur
jQuery:
$(".systems").each( function(i, system) {
// for each location block
system = $(system);
var sys = {
'value' : $("select[data-prod='products']", system).val()
};
allSystems.push( sys );
});
$.ajax({
type: 'POST',
url: 'systems.php',
dataType: 'json',
data: { systems: JSON.stringify(allSystems), uid: uid },
success: function(data){
alert(data)
}
});
PHP:
require_once 'classes/Zend/Json.php';
$json = $_POST['systems'];
$uid = $_POST['uid'];
$array= Zend_Json::decode("$json");
mysql_connect('localhost','user','pass') or die(mysql_error());
mysql_select_db('products') or die(mysql_error());
//insert the suppliers products into the database
foreach($array as $key){
$query = mysql_query("INSERT INTO suppliersProducts (product_id, supplier_id) VALUES('".$key['value']."', '".$uid."' ) ") or die(mysql_error());
}
print_r($json);
Eğer ben PHP geçti alır json dize çözmek için Zend Framework JSON decode işlevi kullanıyorum ve biçimi bana doğru gibi görünüyor görebileceğiniz gibi ben bu kodlama belki, bu hataya neden olan başka ne olabilir hiçbir fikrim yok ? Herhangi bir fikir?
Önceden teşekkürler!