Allgemeine Frage PHP & MySQL

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

  • #16
    jetzt nicht mehr

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

    Kommentar


    • #17
      Das ist wohl war.

      selbst schuld, wenn man nicht weiß was man will!

      Kommentar


      • #18
        davon gehe ich ja immer aus *g*

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

        Kommentar


        • #19
          Die Sache ist noch nicht gelöst

          Ich suche wie schon bereits erwähnt ne Lösung für das

          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.
          Wenn ich das jedoch mit einer Schleife mache, bekomme ich gleich beim ersten Schleifendurchlauf alle Datensätze ausgegeben.

          Und die Lösung von TobiaZ


          WHERE `id` % 2
          Bringt nur jeden zweiten Datensatz

          Kommentar


          • #20
            ja und?

            du willst alle datensätze. die zu holen ist kein problem.

            du musst sie nur noch auf zwei tabellen aufteilen. sollte mit dem % 2 kein problem sein. setz es in PHP um.

            Guck auch mal nach spaltenweise. da siehst du ansätze, wies gehen kann.

            Kommentar


            • #21
              o.k. muss ich um die Daten aus der SQL-Datenbank zu holen eigentlich ímmer mit while beginnen oder kann ich die Daten auch mit for holen.

              Ein Lösungsansatz ist:

              PHP-Code:
              $i=0
              if ($i%2){

              echo 
              //Alle ungeraden Datensätze}
              {
              echo 
              // Alle geraden Datensätze

              $i++} 
              ohne die While Schleife funktioniert das auch, nur eben nicht mit der While schleife, ebenso müsste ich $i dann wieder auf Null setzen.

              Nach Spaltenweise habe ich schon gesucht, bin aber nicht wirklich weitergekommen.

              Kommentar


              • #22
                holen tust du mit mysql_query.

                aber verarbeiten kannst du sieh natürlich auch mit for. aber erzähl mir bitte nicht, dass das einfacher/schneller wäre...

                damit man dir helfen kann, müsstest du aber schon den konkreten code posten. Ich vermute mal, dass du mal wieder die $is an ner unlogischen stelle positioniert hast.

                Kommentar


                • #23
                  Hallo,

                  also zuerst mal danke für die Hilfe, habe irgendwie nen Knoten im Hirn von lauter for und while,

                  folgender Lösungsansatz der wie nicht anders erwartet nicht funktioniert:

                  PHP-Code:
                  <?php
                  $verbindung 
                  mysql_connect("","","");
                  mysql_select_db("url");
                  $abfrage ="SELECT * FROM zeilen";
                  $ergebnis mysql_query($abfrage);
                  $i=0;
                  $row mysql_fetch_array ($ergebnis,MYSQL_ASSOC);
                  $uber=$row['zahl'];
                  $nach=$row['text'];
                  if ( 
                  $i%)
                  {
                  echo 
                  "$uber <br>";
                  echo 
                  "$nach <br>";}
                  {
                  echo 
                  "Hallo";
                  $i++;
                  }
                  ?>
                  1. wird die Schleife nur einmal durchlaufen
                  2. wird der Wert nicht erhöht
                  3. wird wenn $I=1 nur der erste Datensatz ausgegeben und nicht wie eigentlich gewollt der erste und der dritte Datensatz.

                  Ich glaube ich bin einfach nur zu blöd die Logik zu verstehen.

                  Kommentar


                  • #24
                    *lol* hast du deinen code mal durchgelesen?

                    1) welche schleife??? Da ist KEINE!

                    2) Wo hast du das überprüft? Sehe ich nichts von.

                    3) wie soll ein 3 ausgegeben werden, wenn du keine schleife hast?

                    Kommentar


                    • #25
                      Ich sag ja dass ich den Überblick verloren habe und die Schleife nicht hinbekomme. Und nen Fortschritt ist auch auch nicht zusehen.

                      Kommentar


                      • #26
                        Eine andere Möglichkeit wäre ja auch folgende, die sogar ich hinbekomme:

                        Code:
                        <html>
                        <table border=1 align=left>
                        <tr>
                        <td>Tabelle Platzhalter für sp&auml;ter</td>
                        </tr>
                        <table border=1 align=left>
                        <?php
                        $verbindung = mysql_connect("","","");
                        mysql_select_db("url");
                        $abfrage ="SELECT * FROM zeilen where auswahl='links'";
                        $ergebnis = mysql_query($abfrage);
                        while ($row = mysql_fetch_array ($ergebnis,MYSQL_ASSOC))
                        {
                        echo "<tr><td>$row[zahl]</td>";
                        echo "</tr><tr>";
                        echo "<td>$row[text]</td></tr>";
                        }
                        echo "</table>";
                        echo "<table border=1>";
                        mysql_select_db("url");
                        $abfrage ="SELECT * FROM zeilen where auswahl='rechts'";
                        $ergebnis = mysql_query($abfrage);
                        while ($row = mysql_fetch_array ($ergebnis,MYSQL_ASSOC))
                        {
                        echo "<tr><td>$row[zahl]</td>";
                        echo "</tr><tr>";
                        echo "<td>$row[text]</td></tr>";
                        }
                        ?>
                        </table>
                        </table>
                        </html>
                        Mich würde aber dennoch die Lösung für das andere interessieren, schließlich viel ich PHP lernen und nicht, dass was ich nicht realisieren kann, durch einen anderen Weg ersetzen. Denn nur aus Fehlern kann man lernen und kommt weiter. Vorausgesetzt einem werden die Fehler aufgezeigt und erklärt.

                        Kommentar


                        • #27
                          mach ne schleife rein, kann so schwer nicht sein, oder? Wo ist da dein konkretes Problem?

                          PHP-Code in [CODE]-tags lese ich nicht!

                          Kommentar


                          • #28
                            Hier noch mal ein Versuch, aber bei den Schleifen habe ich noch kleine Probleme mit dem Durchblick

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

                            $spalten 2;
                            $zeilen = ( $count $spalten )?( ( $count - ( $count $spalten ) ) / $spalten ):$count $spalten;

                            echo 
                            "<table width=\"100%\">\n";

                            while (
                            $row mysql_fetch_array ($ergebnis);

                            for( 
                            $i 0;$i $zeilen; ++$i ) {
                                echo 
                            "\t<tr>\n"
                                    for( 
                            $ii 0;$ii $spalten; ++$ii ) {
                                    echo 
                            "\t\t<td>" . ( isset( $row[text] )?$row[text]:"&nbsp;" ) . "</td>\n";
                                } 
                                echo 
                            "\t</tr>\n";

                            echo 
                            "</table>"
                            Wo ist der Fehler? Was mache ich generell falsch? Irgendwie bekomme ich die Schleifen zwar hin, wenn es nur um
                            Arrays geht aber sobald die Datenbank ins Spiel kommt bekomme ich Probleme.

                            Kommentar


                            • #29
                              aber bei den Schleifen habe ich noch kleine Probleme mit dem Durchblick
                              Na und wo ist dann dein Problem???

                              Aber wieso machst du jetzt auf einmal zwei schleifen. Wie wäre es, wenn du mal EINE nimmst. und die logisch einsetzt und nicht einfach so.

                              du kannst imprinzip jedes PHP-Teil in Pseudocode übersetzen.

                              in der form

                              solange es eine nächste spalte gibt,
                              mach mal echo

                              vielleicht hilft dir das um die logik hinter der programmierung zu entdecken.

                              Kommentar


                              • #30
                                Mein Problem liegt darin, dass der Counter einen falschen Wert auswirft und mir viermal der gleiche Datensatz ausgeworfen wird.

                                Meinst Du mit zwei Schleifen die beiden for Schleifen oder die while und die for Schleife? Die for Schleifen brauche ich doch um einmal die Zeilen zu generien und um einmal die Spalten zu genieren oder habe ich da einen Denkfehler?

                                Das Problem mit der Datenbank ist z.b. dass er mir logischerweise viermal den gleichen Tabelleninhalt ausgibt:

                                Wie bekomme ich das hin dass mit alle Daten der Tabelle ausgeworfen werden und nicht nur einer. In einem Array funktioniert das ja z.B. so

                                PHP-Code:
                                $x=Array(1,2,3,4,5,6)

                                echo 
                                $X[0];
                                echo 
                                $x[1]; 
                                Aber wie wenn die Daten aus ner DB kommen und in einem Array gespeichert werden??

                                Kommentar

                                Lädt...
                                X