Ich versuche, einen Eingabewert zu php über Ajax zu senden, aber ich kann nicht scheinen, das richtig zu machen. Ich versuche, eine Datentabelle basierend auf der Benutzereingabe zu erstellen.Sende Variable an PHP über Ajax
Dies ist mein Code:
<input class="form-control" id="id1" type="text" name="id1">
Mein JavaScript-Code:
<script type="text/javascript">
$(document).ready(function() {
var oTable = $('#jsontable').dataTable(); //Initialize the datatable
$('#load').on('click',function(){
var user = $(this).attr('id');
if(user != '')
{
$.ajax({
url: 'response.php?method=fetchdata',
data: {url: $('#id1').val()},
dataType: 'json',
success: function(s){
console.log(s);
oTable.fnClearTable();
for(var i = 0; i < s.length; i++) {
oTable.fnAddData([
s[i][0],
s[i][1],
s[i][2],
s[i][3],
s[i][4],
s[i][5],
s[i][6],
s[i][7]
]);
} // End For
},
error: function(e){
console.log(e.responseText);
}
});
}
});
});
</script>
Mein PHP-Skript:
<?php
$conn = pg_connect(...);
$id1 = $_POST["id1"];
$result = pg_query_params($conn, 'SELECT * FROM t WHERE id1 = $1 LIMIT 20', array($id1));
while($fetch = pg_fetch_row($result)) {
$output[] = array ($fetch[0],$fetch[1],$fetch[2],$fetch[3],$fetch[4],$fetch[5],$fetch[6],$fetch[7]);
}
echo json_encode($output);
?>
ich nicht viel von js wissen aber Mein PHP ist korrekt, ich teste es. Also ich denke, das Problem ist in der JavaScript-Code. Das Problem ist, dass meine Datentabelle basierend auf der Benutzereingabe nicht erstellt wird. Vielen Dank!
Sie haben nicht erwähnt, was genau nicht funktioniert, aber Sie sind nicht eine POST-Anfrage zu senden, müssen Sie haben 'Typ:„post“' Dafür senden Sie Ihre Daten mit dem Namen 'url' nicht' id1'. –
Bitte geben Sie uns weitere Details über "es funktioniert nicht". Übrigens, Sie legen in Ihrem Ajax-Aufruf nicht die "Methode" fest. Standarddaten werden an $ _GET und nicht an $ _POST gesendet. [Siehe die JQuery-Dokumentation] (http://api.jquery.com/jquery.ajax/) – Debflav
... und vermutlich schließen Sie das * jQuery * -Skript seit '$ (document) .ready (' (etc) isn) ein 't technisch JavaScript? Lassen Sie uns die offensichtliche aus dem Weg ... – CD001