problem mit if in einer while

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • problem mit if in einer while

    hi

    also.. über ein formular werden daten von kunden eingetragen. die kunden tragen auch ihre gewünschte domain ein. die domain wird dann vor dem eintragen in die mysql zusammngetragen, dass es zb so aussieht: domain.de
    soweit klappt alles.
    jetzt häng ich nur bei der edit funktion. die verschiedenen angebotenen domains werden aus einer mysql ausgelesen. hier der code, wie er bei mir steht:
    PHP-Code:
    $domain_array explode("."$row->domain);
    $domain $domain_array[0];
    $domain_endung "." $domain_array[1] . "";

    echo 
    "<input type=\"text\" name=\"domain\" size=\"21\" value=\"" $domain "\">";

    $query3 "SELECT domain FROM domains ORDER BY domain";
    $result3 mysql_query($query3);
    $row3 mysql_fetch_object($result3);

    echo 
    "<select name=\"domain_endung\">";

    while (
    $row3 mysql_fetch_object($result3))
    {
        if (
    $domain_endung == $row3->domain)
        {   echo 
    "<option value=\"" $row3->domain "\" selected>" $row3->domain "";  }
        else
        {   echo 
    "<option value=\"" $row3->domain "\">" $row3->domain "";   }
    }

    echo 
    "</select>"
    die domains werden alle wunderbar ausgelesen.. bis auf die eine domain, die der kunde bereits ausgewählt hat. es gibt also ein problem bei der if bedingung if($domain_endung == $row3->domain)
    ich hab durch einige ifs auserhalb festgestellt, dass $domain_endung 100% das gleiche is wie ein wert aus $row3... wenn ich die abfrage innerhalb der schleife mache, dann stimmts wieder nich und die if wird nie ausgeführt. lasse ich mir den wert von $domain_endung aber innerhalb der if ausgeben, dann stimmt der wert überein..
    kann es sein, dass es daran liegt, dass die strings mit einem punkt beginnen?

    greetz

  • #2
    hy whizzler,

    mit deiner IF Abfrage möchtest du ja den ausgewählten Wert markieren. klar kann das sein, das es an einem Punkt liegt weil "test" ist ja nicht das gleiche wie ".test".
    Allerdings wäre es nett, wenn du ein Beispiel für die Daten Posten würdest. Teste doch mal mit einem ECHO, was in den variablen steht und vergleiche diese werte miteinander.

    Kommentar


    • #3
      mir fällt spontan das hier auf:
      PHP-Code:
      echo "<option value=\"" $row3->domain "\" selected>" $row3->domain "</option>"
      (du hast das </option> weggelassen).

      in deinem Wert $domain_endung steht ja sowas wie .de, also muss auch der Wert von $row3->domain .de sein, damit selected ausgegeben wird.
      Wird die Domain gar nicht ausgegeben oder nur nicht als selected markiert ?
      hopka.net!

      Kommentar


      • #4
        Original geschrieben von Hopka
        (du hast das </option> weggelassen).
        laut selfhtml dürfte er das sogar, zitat:
        "Ein Abschluss-Tag </option> ist zwar optional, im Hinblick auf verarbeitende Programmiersprachen aber dringend zu empfehlen."

        aber sinnvoll finde ich es auch nicht; ausserdem weiss ich nicht, für welche html-version dieser kommentar galt (selfhtml 8 ist ja inzw. auch schon etwas älter) - für xhtml aber sicher nicht mehr.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Original geschrieben von jochenj
          hy whizzler,

          mit deiner IF Abfrage möchtest du ja den ausgewählten Wert markieren. klar kann das sein, das es an einem Punkt liegt weil "test" ist ja nicht das gleiche wie ".test".
          Allerdings wäre es nett, wenn du ein Beispiel für die Daten Posten würdest. Teste doch mal mit einem ECHO, was in den variablen steht und vergleiche diese werte miteinander.
          hab ich schon oft genug gemacht.. die variablen sind BEIDE .com
          drum kann ich mir das ganze auch nich erklären.. wenn ich die if bedingung außerhalb der while schleife mache, dann klappt alles.. nur in der if funzt das nich..

          Kommentar

          Lädt...
          X