Allgemeine Frage PHP & MySQL

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

  • Allgemeine Frage PHP & MySQL

    Hallo,

    ich habe nun mal eine ganz allgemeine Frage:

    Wie muss ich es anstellen, dass mir beim holen von Daten aus einer Datenbank nicht gleich alle auf die Abfrage zutreffenden Datensätze ausgegeben werden:


    PHP-Code:
    $verbindung mysql_connect("","","");
    mysql_select_db("url");
    $abfrage ="SELECT * FROM zeilen";
    $ergebnis mysql_query($abfrage);
    while(
    $row mysql_fetch_array ($ergebnis))

    echo 
    $row[zahl]; 
    egal wie ich es anstelle sobald

    ich hinter der while Schleife

    den Befehl

    [color=blue]echo ....... [/color] eingebe erscheinen alle Datensätze.



    Ich habe folgendes vor ich möchte alle Datensätz ausgeben deren ID ungerade ist

    Wäre demnach ja dann so

    PHP-Code:
    <?php
    $verbindung 
    mysql_connect("","","");
    mysql_select_db("url");
    $abfrage ="SELECT * FROM zeilen";
    $ergebnis mysql_query($abfrage);
    while (
    $row mysql_fetch_array ($ergebnis,MYSQL_ASSOC))
    {
    $i=1;
    $uber=$row['zahl'];
    $nach=$row['text'];
    if ( 
    $i%)
    {
    echo 
    "$uber <br>";
    echo 
    "$nach <br>";}
    {
    echo 
    "Hallo";
    }
    $i++;
    }
    Ist aber nicht so, es werden alle Felder ausgegeben (drei an der Zahl) und dreimal Hallo, liegt es an der While Schleife?

  • #2
    PHP-Code:
    while ($row mysql_fetch_array ($ergebnis,MYSQL_ASSOC))
    {
    $i=1
    nimm mal das $i=1 aus der while-schleife raus.

    Kommt das gewünschte ergebnis raus? Wenn nicht, dann Ziel nochmal genau beschreiben.

    Kommentar


    • #3
      Ich habe folgendes vor ich möchte alle Datensätz ausgeben deren ID ungerade ist
      Das ist ja nicht das, was du mit deinem code versuchst. Du versuchst jeden zweiten datensatz auszugeben.

      Kommentar


      • #4
        Wenn ich das $i=1 aus der while Schleife nehme funktioniert es trotzdem nicht.

        Ich möchte eigentlich nur z.B. die Datensätze 1,3,5,7 usw. ausgeben.

        Wäre nett wenn ich ebenfalls hierzu noch ne antwort bekäme

        Wie muss ich es anstellen, dass mir beim holen von Daten aus einer Datenbank nicht gleich alle auf die Abfrage zutreffenden Datensätze ausgegeben werden:

        Kommentar


        • #5
          Original geschrieben von TobiaZ
          Das ist ja nicht das, was du mit deinem code versuchst. Du versuchst jeden zweiten datensatz auszugeben.
          Rein logisch gesehen wäre jeder zweite Datensatz auch ungerade vorausgesetzt man fängt bei 1 an und das ganze is fortlaufend.

          Kommentar


          • #6
            Original geschrieben von Newbie43
            Rein logisch gesehen wäre jeder zweite Datensatz auch ungerade vorausgesetzt man fängt bei 1 an und das ganze is fortlaufend.
            was hast'n vor?

            Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
            sondern mit den Augen das Manual zu lesen.

            Kommentar


            • #7
              Rein logisch gesehen wäre jeder zweite Datensatz auch ungerade vorausgesetzt man fängt bei 1 an und das ganze is fortlaufend.
              ja, und da diese voraussetzung niemals 100% gegeben ist ... würde ich lieber sql nur die gewünschten datensätze selectieren lassen.
              Die Zeit hat ihre Kinder längst gefressen

              Kommentar


              • #8
                was hast´n vor

                Ich möchte aus einer Datenbank in der die Zeilen hochgezählt werden in einer Tabelle die Daten mit den ungeraden Zahlen (1,3,5,7) und in ne anderen Tabelle die Daten mit geraden Zahlen (2,4,6,8) ausgeben.

                Kommentar


                • #9
                  WHERE `id` % 2

                  Kommentar


                  • #10
                    War mir auch klar, nur interessiert mich es, damit man weiß, ob man Dir lieber ne Lösung via PHP oder MySQL geben soll

                    Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
                    sondern mit den Augen das Manual zu lesen.

                    Kommentar


                    • #11
                      Natürlich SQL, wenn er nur die einen ausgeben will, braucht man die anderen schließlich nicht zu holen.

                      Man Kauft ja auch nicht nen Kasten Pils und eine Alt.

                      Kommentar


                      • #12
                        PHP-Code:
                        $abfrage ="SELECT * FROM zeilen where id %2"
                        Es funktioniert!!! Jetzt weiß ich auch dass man den Modulo auch da oben einsetzen kann.

                        Trotzdem würde ich ganz gerne meinen Lernprozeß für heute abschließen und ne Antwort auf die Frage haben

                        Wie muss ich es anstellen, dass mir beim holen von Daten aus einer Datenbank nicht gleich alle auf die Abfrage zutreffenden Datensätze ausgegeben werden
                        wenns überhaupt machbar ist.

                        Kommentar


                        • #13
                          Trotzdem würde ich ganz gerne meinen Lernprozeß für heute abschließen und ne Antwort auf die Frage haben
                          die frage versteh ich nicht!

                          gehts um LIMIT?

                          wenn das hier
                          in einer Tabelle die Daten mit den ungeraden Zahlen (1,3,5,7) und in ne anderen Tabelle die Daten mit geraden Zahlen (2,4,6,8) ausgeben.
                          auf einer seite geschehen soll, würde ich doch eher ne php-lösung verwenden.
                          Die Zeit hat ihre Kinder längst gefressen

                          Kommentar


                          • #14
                            Original geschrieben von TobiaZ
                            Natürlich SQL, wenn er nur die einen ausgeben will, braucht man die anderen schließlich nicht zu holen.

                            Man Kauft ja auch nicht nen Kasten Pils und eine Alt.
                            Siehe Posting von "der Hund"

                            Es kommt nicht darauf an, mit dem Kopf durch den Monitor zu rennen,
                            sondern mit den Augen das Manual zu lesen.

                            Kommentar


                            • #15
                              ja, wenn...

                              aber bis jetzt stand ja nur
                              Ich möchte eigentlich nur z.B. die Datensätze 1,3,5,7 usw. ausgeben.
                              zur debatte.

                              Kommentar

                              Lädt...
                              X