Ankündigung

Einklappen
Keine Ankündigung bisher.

[Erledigt] Moechte BOOL Werte 0 und 1 bei der Ausgabe uebersetzen in sprechende Texte

Einklappen

Neue Werbung 2019

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

  • [Erledigt] Moechte BOOL Werte 0 und 1 bei der Ausgabe uebersetzen in sprechende Texte

    In meine DB habe ich einen Parameter s_runner_gender als (BOOL), wobei 0 fuer weiblich (W) und 1 fuer maennlich (M) steht. Nun will ich diesen BOOL-Wert vor der Ausgabe entsporechend uebersetzen:

    So geht's irgendwie nicht:
    (hier natuerlich nur ein Auszug aus dem Code)

    PHP-Code:
    echo "<table border=\"1\">";
    while(
    $row mysql_fetch_object($ergebnis))
    {
    if (
    s_runner_gender 0){$gender 'Ž'}else{$gender 'M'//?????
    echo "<tr>
    <td>
    $row->s_result_id</td>
    <td>
    $row->s_race_name</td>
    <td>
    $row->s_runner_name</td>
    <td>
    $row->s_race_time</td>
    <td>
    $row->s_race_points</td>
    <td>
    $row->s_race_rank</td>
    <td>
    $row->s_runner_birthday</td>
    <td>
    $gender</td> <!--??????-->
    <tr>"
    ;
    }
    echo 
    "</table>"
    Ihr lacht Euch jetzt wahrscheinlich kaputt... macht aber nichts, dann isses wenigstens dafuer gut


  • #2
    = ist ne Zuordnung, für einen Vergleich musst du schon == benutzen

    [edit]
    ich hab übrigens noch nie "sprechende Texte" gesehen

    Kommentar


    • #3
      Du weist der Variable immer 0 zu, statt auf 0 abzufragen, ausserdem fehlen die Strichpunkte
      PHP-Code:
      if (s_runner_gender 0){$gender 'Ž'}else{$gender 'M'// falsch

      if (s_runner_gender == 0){ //richtig
          
      $gender 'Ž';
      }
      else{
          
      $gender 'M';
      }
      // oder
      $gender s_runner_gender == 'Ž' 'M'
      [edit]
      Das stimmt allerdings auch nur, falls s_runner_gender irgendwo als Variable deklariert ist. Dann macht die Abfrage allerdings nicht viel Sinn, da der Wert dann ja bekannt sein sollte
      Gruss
      L

      Kommentar


      • #4
        soll bestimmt so aussehen:
        PHP-Code:
        if ($row['s_runner_gender']== 0){$gender 'frau'}else{$gender 'mann'//????? 
        Under Construktion

        Kommentar


        • #5
          Ich verstehe ehrlich gesagt auch nicht, warum das Geschlecht hier abstrahiert und in externe Logik ausgelagert werden muß. Was ist denn an nem boolschen Wert besser, als in die Datenbank gleich m bzw. f zu schreiben?

          Von der politischen Diskussion mal abgesehen (Wer ist jetzt die Null)?

          KEEP IT SIMPLE ist ein guter Ansatz und 0/1 für m/w bzw. w/m erschließt sich einem einfach nicht. Wer will schon ständig die Dokumentatation bemühen?
          --

          „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
          Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


          --

          Kommentar


          • #6
            oh mann, ja, das hab' ich gestern noch auf meinen Spickzettel geschrieben (und trotzdem wieder vergessen). Shame on me...

            Jetzt hab' ich mal gedacht, schreib' die kurze IF-Schleife in eine Zeile, und... schon kommt Mist raus. DANKE und SORRY!

            Klappt jezt..... nee, noch nicht ganz:

            Das erhoffte Ž wird als ? angezeigt und, selbst wenn ich das Sonderzeichen weglasse und z.B. den BOOL-Parameter in "MANN" und "FRAU" uebersetze, wird in jeder Zeile das gleiche ausgegeben, das aendert sich auch nicht, wenn ich eine neue/geaenderte Abfrage abschicke. ????

            Zum check, welcher Ast der Schleife durchlaufen wird, habe ich mal einen counter eingebaut, der mitzaehlen soll - der counterwert wird mit ausgeben.

            PHP-Code:
            echo "<table border=\"1\">";
            while(
            $row mysql_fetch_object($ergebnis))
               {
                    if (
            s_runner_gender == 0){ 
                            
            $counter++;
                            
            $gender "FRAU";
                    }
                    else{
                            
            $counter++;
                            
            $counter++;
                            
            $gender "MANN";
                    }
                    echo 
            "<tr>
                            <td>
            $row->s_result_id</td>
                            <td>
            $row->s_race_name</td>
                            <td>
            $row->s_runner_name</td>
                            <td>
            $row->s_race_time</td>
                            <td>
            $row->s_race_points</td>
                            <td>
            $row->s_race_rank</td>
                            <td>
            $row->s_runner_birthday</td>
                            <td>
            $gender</td>
                            <td>
            $row->s_runner_gender</td>
                            <td>
            $counter</td>
                  <tr>"
            ;
               }
            echo 
            "</table>"

            Die AUsgabe:

            Kommentar


            • #7
              Du verwendest ja auch die Konstante s_runner_gender statt $row->s_runner_gender

              Error Reporting anstellen! Dann würde die undefinierte Konstante auch angemeckert...
              --

              „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
              Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


              --

              Kommentar


              • #8
                Wenn du auch s_runner_gender (nichtmal ein $, geschweige denn der richtige name ) prüfst und $row->s_runner_gender ausgibst, wie soll das funktionieren?

                [edit] da war einer schneller als ich

                Kommentar


                • #9
                  Kaum macht man's richtig....

                  Kommentar


                  • #10
                    Ich hab dich auf den Fehler hingewiese, und Hu5eL hat dir gesagt, wie es vermutlich heissen soll. Was sollen wir noch mehr tun?
                    Gruss
                    L

                    Kommentar


                    • #11
                      Zitat von lazydog Beitrag anzeigen
                      Ich hab dich auf den Fehler hingewiese, und Hu5eL hat dir gesagt, wie es vermutlich heissen soll. Was sollen wir noch mehr tun?
                      Ich hab deinen Edit aber auch nicht gelesen (mal abgesehen davon das ich deine Konstante nicht gesehen hab) und Hu5el hat auch kein Objekt, sondern ein Array genommen. Sei nicht so hart zu ihm

                      Kommentar


                      • #12
                        Erstmal.... ihr seid hier soo verdammt schnell im Antworten: HOCHACHTUNG!! und RESPEKT!!

                        Dann... Hu5eL's Tip/Hinweis/Antwort ist mir irgendwie durchgerutscht, die hab' ich erst gesehen, als ich meine Frage schon abgeschickt habe.... SORRY

                        @lazydog: Im Moment bin ich total gluecklich, also keine weitere Hilfe in dieser Frage noetig...

                        DICKES DANKE!

                        Kommentar


                        • #13
                          Zitat von cycap Beitrag anzeigen
                          Hu5el hat auch kein Objekt, sondern ein Array genommen.
                          Konnte er ja auch nicht wissen, der Code war ja noch nicht da
                          Zitat von cycap Beitrag anzeigen
                          Sei nicht so hart zu ihm
                          OK ich versuche ganz sanft zu sein
                          Gruss
                          L

                          Kommentar


                          • #14
                            Denke bitte trotzdem mal über eine Änderung der Datenstruktur nach.
                            --

                            „Emoticons machen einen Beitrag etwas freundlicher. Deine wirken zwar fachlich richtig sein, aber meist ziemlich uninteressant.
                            Wenn man nur Text sieht, haben viele junge Entwickler keine interesse, diese stumpfen Texte zu lesen.“


                            --

                            Kommentar

                            Lädt...
                            X