absurd
Herzlich willkommen!
Werte aus $_Post als SQL-Abfrage-Variablen nutzen?
Hallo, bin ein php u. mysql Newbie (aber mit Grundkenntnissen) und habe ein Problem mit einem PHP-Skript zur Abfrage meiner MySQL-DB. Ich sitz jetzt schon Tage davor und weiss nicht wo's hakt.
Es geht um folgendes:
Ich habe eine Tabelle in der DB, aus der ich Informationen auf in HTML ausgeben möchte.
Das ganze soll über folgendes Abfrage-Formular ablaufen:
Soweit so gut. Das ganze wird dann auf der result.php-Seite weiterverarbeitet:
Und jetzt das Problem: Ich möchte mit $Place und $Manner, also den Werten aus dem Formular, eine SQL-Abfrage gestalten. Das habe ich so versucht:
Alles, was ich bekomme ist: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ../dbtest/includes/queryscript.inc on line 16. Das ist: while($zeile = mysql_fetch_array($result))
Habe ich hier Fehler in der Syntax gemacht? Oder geht das, was ich hier vorhabe gar nicht? Die option-values aus dem Abfrage-Formular entsprechen den Spalten in der Tabelle aus der DB. Wie mach ich es richtig?
Danke im voraus.
Hallo, bin ein php u. mysql Newbie (aber mit Grundkenntnissen) und habe ein Problem mit einem PHP-Skript zur Abfrage meiner MySQL-DB. Ich sitz jetzt schon Tage davor und weiss nicht wo's hakt.
Es geht um folgendes:
Ich habe eine Tabelle in der DB, aus der ich Informationen auf in HTML ausgeben möchte.
Das ganze soll über folgendes Abfrage-Formular ablaufen:
Code:
<form enctype="multipart/form-data" action="result.php" method="post">
<ul id="query">
<li><strong>Place *</strong>
<select name="Place">
<option value="Labial" />labial
<option value="Coronal" />coronal
<option value="Dorsal" />dorsal
<option value="Radical" />radical
</select>
</li>
<li><strong>Manner *</strong>
<select name="Manner">
<option value="plosive" />plosive
<option value="nasal" />nasal
<option value="trill" />trill
<option value="tap/flap" />tap/flap
<option value="fricative" />fricative
<option value="approximant" />approximant
...
</select>
</li>
</ul>
<ul id="query">
<li><input type="submit" value="Submit Form" /></li>
<li><input type=reset value="Clear Form" /></li>
</ul>
</form>
Soweit so gut. Das ganze wird dann auf der result.php-Seite weiterverarbeitet:
PHP:
<?php
$Place = $_POST["Place"];
$Manner = $_POST["Manner"];
?>
Und jetzt das Problem: Ich möchte mit $Place und $Manner, also den Werten aus dem Formular, eine SQL-Abfrage gestalten. Das habe ich so versucht:
PHP:
<?php
$query = 'SELECT * '
. ' FROM `all_consonants` '
. ' WHERE `$Place` '
. ' LIKE "+" AND `$Manner` '
. ' LIKE "+" ';
$result = mysql_db_query('phonbase', $query);
?>
<!-- Datenausgabe in Tabelle -->
<p>
<table>
<tr><th>ID</th><th><?php echo $Place ?></th><th><?php echo $Manner ?></th></tr>
<?php
while($zeile = mysql_fetch_array($result))
{
echo "<tr><td>" . $zeile["ID"] . "</td>";
echo "<td>" . $zeile[$Place] . "</td>";
echo "<td>" . $zeile[$Manner] . "</td></tr>";
}
Alles, was ich bekomme ist: Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ../dbtest/includes/queryscript.inc on line 16. Das ist: while($zeile = mysql_fetch_array($result))
Habe ich hier Fehler in der Syntax gemacht? Oder geht das, was ich hier vorhabe gar nicht? Die option-values aus dem Abfrage-Formular entsprechen den Spalten in der Tabelle aus der DB. Wie mach ich es richtig?
Danke im voraus.