Joachim: if -vergleich

Hi

Ich habe folgende wert in einer datenbank gespeichert ... : geschlecht =
"männlich"

wie kann ich diesen jetzt vergleichen ...?

if ($datenbankergebnis == "männlich") ....

geht nicht .. weil er keine Sonderzeichen nicht vergleichen kann .. wie
könnten ich diese Problem
lösen ... ? Ohne "ä" würde der vergleich gehen ...

Vielen dank

  1. Wie wärs mit Umlautewandlung in ae/oe/etc.?

    Entweder bei der Abfrage oder schon
    vorm Speichern in der db?

    cgi-Variante wäre:
    $Text =~ s/ä/ae/g;
    bzw. ...gi; wenn Gross/Klein egal ist

  2. Moin

    Ich habe folgende wert in einer datenbank gespeichert ... : geschlecht =
    "männlich"
    wie kann ich diesen jetzt vergleichen ...?
    if ($datenbankergebnis == "männlich") ....
    geht nicht .. weil er keine Sonderzeichen nicht vergleichen kann .. wie
    könnten ich diese Problem
    lösen ... ? Ohne "ä" würde der vergleich gehen ...

    Merkwürdig, mein PHP hat damit keine Probleme. Liegt der Fehler vielleicht woanders, zum Beispiel bei unterschiedlichen Zeichensätzen für die zwei ä's oder ist eins davon gar als ä kodiert? Wäre es nicht sowieso viel einfacher und effizienter ENUM-Felder in der Datenbank zu benutzen.

    --
    Henryk Plötz
    Grüße aus Berlin

  3. Hi,

    kann mich Henryk nur anschliessen - hatte mit dem Vergleich mit Umlauten in PHP auch noch nie Probleme.

    Ich hatte jedoch einmal das gleiche Problem, wobei da nicht PHP schuld war - falls du einen Editor verwendest, der die Umlaute beim Speichern automatisch maskiert, kann es zu diesem Problem kommen.

    Bei mir wars Phase 5 (jaja, ich weiss - ist nicht der beste für PHP *g*, verwend ihn trotzdem gern) - da kannst du einstellen, dass der Editor sowohl beim Speichern die Umlaute maskiert, als auch beim Öffnen diese wieder im Umlaute umwandelt - was glaubst du wie lang ich DEN Fehler gesucht hab *g*.

    Liebe Grüsse aus Österreich
      Martin