Probleme mit dem Ajax zu $_POST
übergeben, es gibt immer falsch zurück.
Was ich bisher versucht:
- Mit content:
'application/json; charset=UTF-8'
, - eine Funktion für Ajax und das Hinzufügen zu jQuery Erstellen Onclick
- entfernt datatype in Javascript,
console.log: Object {readyState: 0, responseText: "", status: 0, statusText: "error"}
- Mit dataType in Javascript,
Object {readyState: 4, responseText: "↵ ↵Failed to hold<br>", status: 200, statusText: "OK"}
Javascript:
$(document).ready(function(){
$("#showcart").click(function(event){
event.preventDefault();
$.ajax({
data: {'jCart':JSON.stringify(cart)},
type: 'POST',
dataType: 'json',
url: 'storecart.php',
contentType:'application/json; charset=UTF-8',
success: function(data){
console.log("Success")
},
error: errorFunction
});
});
});
function errorFunction(){
console.log("Error");
}
Storecart.php
<?php
if(isset($_POST['jCart'])){
$decode = json_decode($_POST['jCart']);
$_SESSION['receive'] = $decode;
$product = $_SESSION['receive'];
}
else{
echo "Failed to hold<br>";
}
?>
Cart.php
<?php
session_store();
include(Storecart.php);
?>
Auf der Konsole wird essagen.
Auf dem cart.PHP wird es "Failed to hold"
sagen.
Was ich weiß ist, dass Ajax nicht richtig läuft, ich weiß nicht, wie ich es beheben kann.
FAST SOLUTION für Ajax, aber es kann aus irgendeinem Grund
nicht schreiben Sie wissen nicht, warum, aber es funktionierte für mich.
Erstellen Sie eine Funktion:
function showcart(){
var jData = JSON.stringify(cart);
$.ajax({
url:"storecart.php",
type:"post",
data: 'datastring=' + jData,
datatype: "json",
success: function(data){
console.log("SUCCESS")
console.log(jData);
},
error: function(data){
console.log("REDO")
}
});
}
es dem javascript:
$(document).ready(function(){
$("#showcart").click(function(event){
event.preventDefault();
showcart();
});
});
Versuchen Sie, Ihren Fehler-Callback zu bearbeiten und lassen Sie uns wissen, was Sie in der Konsole zu sehen. Fehler: 'Funktion (Daten) {console.log (Daten); } ' – Sina
@Sina' Objekt {readyState: 4, responseText: "↵ ↵Failed zu halten
", Status: 200, statusText: "OK"} ' –
Versuchen' Methode: 'POST'' anstelle von 'type'. – Sina