title image


Smiley Re: nach einem Wort in einem string suchen
Grundsätzlich: wenn Du Daten als Array bekommst und auch als Array weiter

verarbeiten willst, dann speichere und lade sie entweder auch als Array

(siehe serialize(), unserialize(), in_array() etc.), oder wandle die Liste

in eine Form um, die logisch aufgebaut und leicht zu interpretieren ist

(implode(), explode() etc.). Es gibt auch andere Methoden, aber selbst

diese zwei Beispiele eignen sich wesentlich besser, als für diese Art der

Überprüfung eine Suche in Strings zu veranstalten.



Wie gesagt, benutze strpos() hier nicht, auch wenn ich jetzt noch mal

auf Deinen Code eingehe.



> if(strpos($row->stilrichtung,'Zeichnung')) { echo("checked=\"checked\"");



strpos() kann durchaus auch 0 zurück liefern, und damit die Position Null statt

der Antwort Null/falsch meinen, also mußt Du hier auf einen typengerechten Wert

testen: if ( false !== strpos( 'Heuhaufen', 'Nadel' ) ) ...

Echo ist ein Sprachkonstrukt und keine Funktion - das ist zwar kein Fehler per se,

weil PHP so gnädig ist, es zu übersehen, aber es ist eine schlechte Angewohnheit,

hier Klammern zu setzen: echo 'checked="checked"';



> Wahrscheinlich dauert das laden der Seite nicht so lange wie das Prüfen der 10

> einzelnen Felder. Der hat noch nicht alle Checkboxen geprüft und schon wurde die

> Seite neugeladen.



Das hat damit nichts zu tun; PHP ist längst fertig, wenn die Daten schließlich

zur Darstellung an Deinen Benutzerklienten gesendet werden. Überprüfe, ob wirklich

alle in den Boxen gesetzten Werte richtig gespeichert und wieder abgerufen werden,

oder ob es da schon Verluste gibt. Was Du hier benötigst ist nicht AJAX, sondern

ein sinnvolles System zur Validierung von Formularelementen und, um einen Schritt

weiter zu gehen, die Trennung von Inhalt und Form durch Templates (siehe Smarty).



Alle hier genannten Funktionen lassen sich unter http://www.php.net/manual/en/

einsehen.



Bearbeitet: Rechtschreibung (keine Konzentration, heute)
-- ([IDESW][icdehur]{1,2})?(?(1)\s+lieb[est][nt]?|[ES][ri]e?\s+(?>kennt)) \s+Regul[äa]e?re\s+Ausdr(?:ü|ue)cke(?(1)[.!]|\s+nicht[.!](?!:D))

geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: