Abfrage Problem

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

  • Abfrage Problem

    hy leute!

    folgendes problem:

    nutze hier folgendes script:

    PHP-Code:

     
    function news_connect()

            {

            
    $result mysql_query("SELECT * FROM news_flash ORDER BY zeit DESC");




                      if (
    $num mysql_num_rows($result)) {

              
    // Ausgabe der Datensätze, wenn vorhanden

              
    for($i=0;$i $num$i++) {

              
    $id mysql_result($result,$i,"nr");

              
    $news_flash mysql_result($result,$i,"news_flash");

              
    $news_preview mysql_result($result,$i,"news_preview");

              echo (
    "<b><font color=000000>-</font> <a href=\"./news_view.php?site=news&nr=$id\">$news_flash</a></b><br>");
              echo (
    "<a href=\"./news_view.php?site=news&nr=$id\">$news_preview</a><br><br><br>");


              }

              }

              } 
    mein problem ist folgendes:
    wie schaffe ich es das ich jetzt diese beiden ausgaben



    PHP-Code:

     
    echo ("<b><font color=000000>-</font> <a href=\"./news_view.php?site=news&nr=$id\">$news_flash</a></b><br>");
              echo (
    "<a href=\"./news_view.php?site=news&nr=$id\">$news_preview</a><br><br><br>"); 
    in eine if abfrage reinbaue die folgendes machen soll:

    es soll so aussehen das wenn in der tabelle "news" etwas drinnen steht folgende zeilen angezeigt werden:

    PHP-Code:

     
    echo ("<b><font color=000000>-</font> <a href=\"./news_view.php?site=news&nr=$id\">$news_flash</a></b><br>");
              echo (
    "<a href=\"./news_view.php?site=news&nr=$id\">$news_preview</a><br><br><br>");
    echo (
    "<a href=\"./news_view.php?site=news&nr=$id\"> --- weiter --- </a><br><br><br>"); 
    und wenn in der tabelle "news" nichts drinnen steht nur die ersten beiden zeilen geschrieben werden, also:

    PHP-Code:

     
    echo ("<b><font color=000000>-</font> <a href=\"./news_view.php?site=news&nr=$id\">$news_flash</a></b><br>");
              echo (
    "<a href=\"./news_view.php?site=news&nr=$id\">$news_preview</a><br><br><br>"); 
    bitte um eure hilfe mit der umsetzung, oder am besten gleich einen vorschlag ;-)

    besten dank!
    lg


    chris

  • #2
    PHP-Code:
    echo ("<b><font color=000000>-</font> <a href=\"./news_view.php?site=news&nr=$id\">$news_flash</a></b><br>");
              echo (
    "<a href=\"./news_view.php?site=news&nr=$id\">$news_preview</a><br><br><br>");
    if (
    $num != 0) {
    echo (
    "<a href=\"./news_view.php?site=news&nr=$id\"> --- weiter --- </a><br><br><br>");

    Wenn nicht drinn steht erhälst du auch kein Ergebnis, d.h. $num ist dann 0.
    it's not a bug,
    it's a feature!

    Kommentar


    • #3
      mmh...

      danke für die rasche antwort, nur wenn ich das script jetz von dir einfüge dann steht überall der link ---weiter--- drinnen, obwohl in der tabelle "news" nur in 1mal was vorkommt !?

      oder versteh ich dich da jetzt ein wenig falsch????
      lg


      chris

      Kommentar


      • #4
        ...

        wenn ich diesen teil jetzt so reinschreibe:

        PHP-Code:
         $id mysql_result($result,$i,"nr");

                  
        $news_flash mysql_result($result,$i,"news_flash");

                  
        $news mysql_result($result,$i,"news");

                  
        $news_preview mysql_result($result,$i,"news_preview");

                  echo (
        "<b><font color=000000>-</font> <a href=\"./news_view.php?site=news&nr=$id\">$news_flash</a></b><br>");
                  echo (
        "<a href=\"./news_view.php?site=news&nr=$id\">$news_preview</a><br><br><br>");
        if (
        $news != 0) {
        echo (
        "<a href=\"./news_view.php?site=news&nr=$id\"> --- weiter --- </a><br><br><br>");


        funktionieren tut es! liege ich aber damit richtig??
        lg


        chris

        Kommentar


        • #5
          ...

          ups..tschuldige .. so tuts doch nicht !?
          lg


          chris

          Kommentar


          • #6
            $news != $num

            Und was soll das eigentlich?
            PHP-Code:
            if ($num mysql_num_rows($result)) { 
            Das if da ist völlig überflüssig!

            Ausserdem machte deine Schleife gar nichts, wenn die Tabelle leer ist.
            Du musst das vor der Schleife schon abtesten.
            Habbich vorhin en bissl schief hingeguckt.
            Zuletzt geändert von XGremliN; 24.10.2003, 12:35.
            it's not a bug,
            it's a feature!

            Kommentar


            • #7
              ...mmh

              wieso ist $num gleich $news???

              versteh ich jetz nicht!?

              "news" so heißt doch die spalte ?!
              hab ich mich da glaub ich falsch ausgedrückt ich meinte spalte!
              lg


              chris

              Kommentar


              • #8
                1. != bedeutet UNgleich
                2. Wenn du Spalte meinst muss es natürlich heißen $news NOT NULL
                3. Wenn du was wichtiges änderst, dann mach das bitte über die edit-Tags deutlich!
                it's not a bug,
                it's a feature!

                Kommentar


                • #9
                  ..

                  ich habe den teil eh schon eingebaut ;-)

                  PHP-Code:
                            $news mysql_result($result,$i,"news"); 
                  ja.. mmh.. nur wie jetzt die if abfrage so machen damit das richtige rauskommt?
                  mit not null hab ichs mir schon gedacht nur ich weiß jetz nicht wie ichs umsetzen soll!
                  lg


                  chris

                  Kommentar


                  • #10
                    PHP-Code:
                    if (!is_null($news)) {
                    echo (
                    "<a href=\"./news_view.php?site=news&nr=$id\"> --- weiter --- </a><br><br><br>");

                    EDIT:
                    Kleiner Fehler von mir!
                    Zuletzt geändert von XGremliN; 24.10.2003, 12:46.
                    it's not a bug,
                    it's a feature!

                    Kommentar


                    • #11
                      PHP-Code:
                      $result mysql_query("SELECT * FROM news_flash ORDER BY zeit DESC");
                      if (
                      mysql_num_rows($result)>0
                      {
                      // mach die ausgabe
                      }
                      else
                      {
                      // ausgabe wenn nix gefunden

                      ... dann schau dir auch mal "mysql_fetch_array() statt mit mysq_result() zu arbeiten
                      Kissolino.com

                      Kommentar


                      • #12
                        ..

                        danke .. nur mit:

                        ???
                        PHP-Code:
                         if (!is_null($news)) {
                        echo (
                        "<a href=\"./news_view.php?site=news&nr=$id\"> --- weiter --- </a><br><br><br>");

                        wird mir bei allen der ---weiter--- link angezeigt!?
                        warum
                        lg


                        chris

                        Kommentar


                        • #13
                          Was heißt warum!
                          Wenn du irgendwo in deiner SPalte "news" was drin stehen hast ist die nicht NULL!
                          Wenn du das jetzt in der For-Schleife lässt geht er jeden Satz durch, stellt fest, das "news" nicht leer ist und gibt ---weiter--- aus.

                          Ich weiss echt nicht mehr so richtig was du willst. Deine Frage ist beantwortet und es funktioniert alles so, wie du es laut deiner Frage haben wolltest.
                          Zuletzt geändert von XGremliN; 24.10.2003, 13:00.
                          it's not a bug,
                          it's a feature!

                          Kommentar


                          • #14
                            ...

                            ja, das is ma schon klar! nur es steht nicht in jedem datensatz bei der spalte "news" was drinnen!
                            so schauts jetzt die function aus:


                            PHP-Code:
                             function news_connect()

                                    {

                                    
                            $result mysql_query("SELECT * FROM news_flash ORDER BY zeit DESC");




                                      if (
                            $num mysql_num_rows($result)) {

                                      
                            // Ausgabe der Datensätze, wenn vorhanden

                                      
                            for($i=0;$i $num$i++) {

                                      
                            $id mysql_result($result,$i,"nr");

                                      
                            $news_flash mysql_result($result,$i,"news_flash");

                                      
                            $news mysql_result($result,$i,"news");

                                      
                            $news_preview mysql_result($result,$i,"news_preview");

                                      echo (
                            "<b><font color=000000>-</font> <a href=\"./news_view.php?site=news&nr=$id\">$news_flash</a></b><br>");
                                      echo (
                            "<a href=\"./news_view.php?site=news&nr=$id\">$news_preview</a><br><br><br>");

                             if (!
                            is_null($news)) {
                            echo (
                            "<a href=\"./news_view.php?site=news&nr=$id\"> --- weiter --- </a><br><br><br>");
                            }



                                      }

                                      }

                                      } 

                            Original geschrieben von XGremliN
                            Was heißt warum!
                            Wenn du irgendwo in deiner SPalte "news" was drin stehen hast ist die nicht NULL!
                            Wenn du das jetzt in der For-Schleife lässt geht er jeden Satz durch, stellt fest, das "news" nicht leer ist und gibt ---weiter--- aus.
                            lg


                            chris

                            Kommentar


                            • #15
                              Steht in der Spalte news wirklich NULL oder ist da ein Leerzeichen eingetragen? Weil eigentlich müsste es so gehen, dass er nur bei gefülltenm Datensatz das --- weiter --- ausgibt.
                              it's not a bug,
                              it's a feature!

                              Kommentar

                              Lädt...
                              X