Mike: Einfache Abfrage funzt nicht :(

Ich habe eine Abfrage, nach der ich entweder Deutsch oder Englisch als Sprache verwenden möchte.

In einer mySQL-Datenbank stehen in der Tabelle "Login" und dort unter "sprache" jeweils "Deutsch" oder "English".

Dann habe ich dieses Script geschrieben, aber er gibt immer "DEUTSCH" aus.

<?
$benutzername = "test";
// Hier drin sind alle Infos für die Verbindung zur Datenbank
include("../../deutsch/include_sqlconnect.php");
// Hier beginnt die Abfrage und der jeweils gewählte Benutzer wird eingelesen
$abfrage = "SELECT * FROM login WHERE benutzername = '$benutzername'";
$ergebnis = mysql_query($abfrage);
while ($row = mysql_fetch_array ($ergebnis))
 {
 if ($row[sprache] = 'Deutsch' OR 'deutsch') {
 echo "DEUTSCH";
 } else {
 echo "ENGLISH";
 }}
?>

Kann jemand weiterhelfen? Er gibt immer DEUTSCH aus, selbst wenn in der Datenbank was anderes steht. Die Verbindung zur Datenbank klappt einwandfrei, denn auch sonst funktioniert alles.

Grüsse
Mike

  1. hallo

    {
     if ($row[sprache] == 'Deutsch' OR 'deutsch') {

    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
    man benutze 2 == , da Du sonst einen wert zuweist
    in Deinem Falle hattest DU also immer deutsch zugewiesen
    und da zuweisen meist klappt, hat die if-Abfrage true zurückgegeben

    Grüsse
    Mike

    ciao
    romy

    --
    DIE ROMY AUS L. AN DER P. SAGT DANKE UND AUF WIEDERSEHEN
    ->Alles ist gut wenn es aus Schokolade ist
    1. Huhu

      if ($row[sprache] == 'Deutsch' OR 'deutsch') {
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
      man benutze 2 == ,

      und beachte auch die 2. Bedingung nach dem OR.
      Da ein String ungleich '' immer wahr ist liefert obiger Ausdruck
      immer true.

      Also

      if ($row['sprache'] == 'Deutsch' OR $row['sprache'] == 'deutsch')

      oder

      if ( strtolower( $row['sprache']) == 'deutsch' )

      in diesem Fall würde sich evtl. auch ein switch anbieten. (Im Hinblick auf die Spanische und Chinesische Sprachversion ;-)

      Auf dieser Seite

      http://www.php.net/manual/de/language.types.array.php

      unter "Array do's und don'ts"

      steht beschrieben warum es mit_mit_Tüttelchen "richtiger" ist als
      mit_mit_ohne_Tüttelchen.

      Viele Grüße

      lulu

      --
      bythewaythewebsuxgoofflineandenjoytheday