Sie befinden sich hier im Forenarchiv von phpforum.de wenn Sie direkt ins Forum möchten, klicken Sie bitte hier. Zur Startseite kommen Sie hier.

übergebene werte kontrolliert weiterverarbeiten

hi pros,

hab da so ein kleines problem:
-ich habe zwei eingabefelder und zwei auswahlfelder in einem formular (suchfunktion)
-nach den übergebenen werten soll in einer DB gesucht werden (je nach dem welche werte vom user angegeben werden z.b. zwei beliebige werte sind dem user bekannt)

sooo...folgendermaßen habe ich das gelöst , und es tut aber nicht so wie es soll (rein logisch müsste es aber gehen)
-die werte werden nach übergabe in ein array geschrieben, um kontrollieren zu können, dass nach leeren feldern nicht gesucht wird.

um quellcode zu sparen, noch folgende erklärung:
je nach arrayfeld (leeres feld / beschriebenes feld) wird ein sql-string gebaut, um eben nach den werten zu suchen

[color="orange"]if ($_POST["Nummer"] or $_POST["Bezeichnung"] " or $_POST["Kategorie"] or $_POST["Hersteller"])
{
$post_wert[0] = $_POST["Nummer"];
$post_wert[1] = $_POST["Bezeichnung"];
.......
.......


if($post_wert[0] and $post_wert[1] and $post_wert[2] ! ==" ")
{
baue entsprechenden sql-string
}
elseif ($post_wert[0] and $post_wert[1] ! ==" ")
{
baue entsprechenden sql-string
}
elseif($post_wert[0] ! ==" ")
{
baue entsprechenden sql-string
}
..............
..............
}
[/color]
ich habe keine ahnung, was daran falsch sein soll?? egal was ich mache, komm ich nicht weiter, wie bis zur ersten if-abfrage!! ich bekomme jedes mal den gleichen sql-string angezeigt!

ich hoffe, jemand versteht die problemstellung und kann mir helfen und sagen, ob es evtl. eine andere lösung dafür gäbe.

sorry für den unformatierten code !

Hier gehts zum Orginal Eintrag "übergebene werte kontrolliert weiterverarbeiten" im Forum

Antworten

was soll das gelbe da sein?
Es gibt einen Extra Button um deinen Code richtig schön als PHP zu formatieren;)
Vorher les ichs persönlich net durch...


2.

1. Standard-Antwort:
Richtig debuggen
1. Man bemerkt, dass ein Skript nicht das tut, was es soll.
2. Man versucht, die Stelle die daran Schuld sein kann, schonmal einzugrenzen. Falls dies nicht geht, wird zunächst das komplette Skript als fehlerhaft angesehen.
3. An den Anfang des Scriptes schreibt man die Zeile: error_reporting(E_ALL);
4. An markanten Stellen im Skript lässt man sich wichtige Variableninhalte ausgeben und ggf. auch in bedingten Anweisungen eine kurze Ausgabe machen, um zu überprüfen, welche Bedingung ausgeführt wurde (oder auch nicht).
5. Schritt 3 wird so lange wiederholt, bis Unstimmigkeiten im Skript auffallen
6. Damit hat man das Problem (Unstimmigkeit) gefunden und kann versuchen diese zu beheben. Hierzu dienen dann die PHP-Dokumentation und andere Quellen als Ratgeber.
7. Lässt sich das konkrete Problem trotzdem nicht beheben, kann man in Foren um Rat fragen.
8. Das Programm läuft und man kann die Debug-Ausgaben wieder entfernen.

Die Ausgaben per echo kann man sich ersparen, in dem man einen Debugger benutzt.

2. Standard-Antwort:
Deine Frage wurde im Forum schon einige Male beantwortet. Bitte benutze die Suchfunktion, um nach anderen Themen zu suchen, in denen dieses Problem schon behandelt wurde.

Wenn Du eine Fehlermeldung zu sehen bekommen hast wäre es empfehlenswert nach dieser zu suchen.

[doc]implode[/doc]


3.

danke !


Hier gehts zum Orginal Eintrag "übergebene werte kontrolliert weiterverarbeiten" im Forum
 
phpforum.de | Impressum | Handy Bundles