Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hi Leute, kann mir jemand sagen was an dem folgenden Suchscript falsch ist und mich verbessern, das wäre nett:

<?php

$res = mysql_query( "SELECT * FROM ".$prefix."news WHERE moebel like '%$eingabe%' OR beschreibung like '%$eingabe%' OR muenzen like '%$eingabe%' ORDER BY NAME DESC");

{
$pn = mysql_result($res, $i, "moebel");
$ak = mysql_result($res, $i, "beschreibung");
$pl = mysql_result($res, $i, "muenzen");
$ergebnis =mysql_query($res);
echo "$pn, $ak, $pl, $ergebnis
";
}

?>[/PHP]

Ich bedanke mich im vorraus!

Geschrieben

Ich kenn mich in mysql nur sehr wenig aus. Anscheinend bist du Profi darin, könntest du mir da weiterhelfen?

Es kommt keine Fehlermeldung, wenn ich was eingebe in das formular kommt wenn ich auf "Senden" klicke einfach nur der Inhalt der ersten ID aus der Tabelle NEWS und nicht das Wort dass ich in der Tabelle News ja gesucht habe, verstehste?

Danke dir

Geschrieben

Also ganz ehrlich Leute, ich such jetzt schon 3 Tage nach dem Script und ich komm nicht klar mit euren Links, ist zwar nett und dafür bedank ich mich auch, aber ein fertiger Code wär doch die schnellste Lösung für mich.

Danke

Geschrieben (bearbeitet)
<?php


$sql = "SELECT ...";

$result = mysql_query($sql);


while($daten=mysql_fetch_assoc($result)

{

  echo $daten['foo'];

}


?>

Bearbeitet von shinuma
Edit: [CODE] vergessen
Geschrieben

Er zeigt nix mehr an, macht statdessen die Seite kaputt :), vllt auch mein Fehler hab den Code jetzt so:

<?php

$sql = mysql_query( "SELECT * FROM ".$prefix."news WHERE moebel like '%$eingabe%' OR beschreibung like '%$eingabe%' OR muenzen like '%$eingabe%' ORDER BY NAME DESC");


$result = mysql_query($sql);

while($daten=mysql_fetch_assoc($result);

{
echo $daten['foo'];
}


?>[/PHP]

Formular sieht so aus:

[code]<form id="form1" name="form1" method="post" action="index.php?panel=6"> <input name="eingabe" type="text" id="eingabe" value="<?php echo $_POST['eingabe']; ?>" /> <input name="sent" type="hidden" id="sent" value="sent" /> <input type="submit" name="Submit" value="Senden" /> </form>[/code]

Geschrieben

Ich bezweifel dass auf Deiner Tabelle das Feld "foo" existiert. Schau Dir doch bitte die beiden Links an und versuche das zu verstehen, was dort erklärt wird.

Du musst nur die Beispiele abschreiben und passend zu Deiner Problemstellung Felder und Select ersetzen

Phil

Geschrieben

1. ist die Form Datei überhaupt richtig so?

2. kannste nicht einfach den PHP Code verbessern, alle Felder und Tabellen die dort angebeben sind gibt es ja wirklich in der DB, nur das 'foo' nicht, aber das hab ich ja von einem der Antwortenden bekommen!

Verbessere mal bitte, ich bin nämlich echt am vezweifeln, ich meine anscheinend kannst du es ja, will keine Tipps, will den Code haben XD

Dank dir

Geschrieben
Das hab ich ja gemacht, trotzdem gehts net!

Das ist ein eingebauter Selbstschutzmechanismus, den die meisten Programmiersprachen besitzen. Dieser soll u.a. verhindern, dass unperformanter und potentiell gefährlicher Code o.ä. (beides strifft auf dein SQL zu) in Produktionsumgebungen gelangt.

Leider ist dieser Selbstschutzmechanismus nicht sehr ausgeprägt, aber hin und wieder funktioniert er ganz gut.

Fazit: Verstehe was Du nutzen möchtest und dazu gehört auch, dass Du dich auf deine 4 Buchstaben setzt und PHP und SQL lernst.

Dim

Geschrieben

So, damit du siehst, was ich in meinem panel im CMS stehen habe:

Formular

<form id="form1" name="form1" method="post" action="index.php?panel=6">

<input name="eingabe" type="text" id="eingabe" value="<?php echo $_POST['eingabe']; ?>" />

<input name="sent" type="hidden" id="sent" value="sent" />

<input type="submit" name="Submit" value="Senden" />

</form>

Dazu der Php Code

<?php

$sql = mysql_query( "SELECT * FROM ".$prefix."news WHERE moebel like '%$eingabe%' OR beschreibung like '%$eingabe%' OR muenzen like '%$eingabe%' ORDER BY NAME DESC");


$result = mysql_query($sql);

while($daten=mysql_fetch_assoc($result))
{
echo $daten['moebel'];
}


?>[/PHP]

Und ich hab alles nochmals kontrolliert, alles Feldnamen und Tabellen exestieren, es geht aber trotzdem nicht, er zeigt einfach kein Text an!

Geschrieben
Und ich hab alles nochmals kontrolliert, alles Feldnamen und Tabellen exestieren, es geht aber trotzdem nicht, er zeigt einfach kein Text an!

Und Du hast auch verifiziert, dass auch wirklich Daten in der Tabelle sind, die zu den Suchbegriffen passen? Auch was Gross-/Kleinschreibung betrifft?

Im übrigen fehlt jeglicher Ansatz einer Fehlerbehandlung.

Dim

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...