2011-01-14 5 views
1

bekommen Ok, also habe ich dieses Suchfeld, in dem Leute ein Nahrungsmittel eintippen. Wenn sie den Knopf drücken, muss ich diese Eingabe an eine .php Datei senden. Diese PHP-Datei wird nach den Kalorien dieses Nahrungsmittels (das ist in meiner Datenbank) aussehen und den Namen und die Kalorien des Nahrungsmittels ausgeben. All dies muss getan werden, ohne die Seite neu zu laden, also habe ich angefangen herauszufinden, wie JQuery funktioniert.den Rest der Zeile in einer Datenbank mit JQuery

Allerdings stecke ich fest, Ich weiß nicht, was ich in das Datenfeld der Jquery-Funktion einfügen soll und wie ich diese Daten in der .php-Datei 'fangen' kann. Kann mir jemand eine Idee geben? vielen Dank! (Siehe die ?????? s für Dinge, die ich nicht verstehe). Außerdem müssen die Daten, die zurückkommen, am Ende nicht in einer Alarmbox sein, sondern einige Tabellen auf meiner Seite aktualisieren. Wie kann ich das tun? Welche JSON (?) Jquery-Funktion brauche ich?

, was ich habe bisher:

in Kopf:

<script type="text/javascript"> 
function contentDisp() 
{ 

$.ajax({ 
    type: 'POST', 
    url: 'getFood.php', 
    data: '????????', 
    success: function(data){ 
    alert("Data Loaded: " + data); 
    } 

}); 

} 
</script> 

und in Körper:

<form autocomplete="off"> 
     <p> 
      Product: 
      <input type="text" name="food" id="food" class="food_name_textbox" onmouseover="javascript: this.className='food_name_textbox_mouseover';" onmouseout="javascript: this.className='food_name_textbox';"/> 
     </p> 
     <button id="zoek" type="button" onClick="contentDisp();">Zoek</button> 
    </form> 

und in getFood.php:

<?php 
require_once "config.php"; 
$id = "??????" 
$result = mysql_query("SELECT * FROM voedingswaarden WHERE voedsel='$id'"); 
$row = mysql_fetch_array($result); 

echo json_encode($row); 

?> 

Antwort

1
$.ajax({ 
    type: 'POST', 
    url: 'getFood.php', 
    data: {'foodnametextbox' : $('#food').val() }, 
    datatype: "json", 
    success: function(data){ 
    $('#table').html(data); 
    } 
}); 

<?php 
require_once "config.php"; 
$id = $_POST['foodnametextbox']; //escape and validate this input before using it in a query 
$result = mysql_query("SELECT * FROM voedingswaarden WHERE voedsel='$id'"); 
$row = mysql_fetch_array($result); 

echo json_encode($row); 

?> 
+0

Vielen Dank, hatte seit Stunden versucht, aber jetzt funktioniert es !! – Javaaaa

+0

Hinweis: Vergessen Sie nicht, die Postdaten zu validieren und zu entfernen. Eine gewöhnliche Funktion zum Entkommen ist mysqli_real_escape_string(). –

1
<script type="text/javascript"> 
function contentDisp() 
{ 
var textSearch = $("#myText").text(); 

$.ajax({ 
    type: 'POST', 
    url: 'getFood.php', 
    data: textSearch, 
    success: function(data){ 
    alert("Data Loaded: " + data); 
    } 

}); 

} 
</script> 

PHP:

$id = $_POST['textSearch']; 
+0

nice! Danke für die Abstimmung und danke, dass du mir gesagt hast, warum du abgelehnt hast. – benhowdle89

+0

Es tut uns leid, der Downvote war von mir. Hier ist mein Feedback. 1. In dem angezeigten HTML existiert kein ID-Mytext. 2. Die Verwendung von text() anstelle von val() ist für Eingabeelemente nutzlos. 3. Keine gültige Möglichkeit zum Parsen der Daten in der Anfrage. 4. Sie zeigen nicht, wie die Daten zu einer Tabelle analysiert werden. 5. Keine ausgehende Postvariable. –

Verwandte Themen