Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem mit Zufallszahl und Schleife in Sql Datenbank

Einklappen

Neue Werbung 2019

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

  • Problem mit Zufallszahl und Schleife in Sql Datenbank

    Hallo kann mir jemand sagen was an diesem Script nicht funktioniert, ich will für alle Einträge in der Datenbank, bei dem Feld lokalid eine Zufallszahl haben.
    Bitte um Hilfe:

    PHP-Code:
    require("sql.php");

    $zahl = 129;
    for(
    $a = 0; $a < $zahl; $a++)
      { 
    $zufall = rand(100000000,1000000000);
    $aendern = "UPDATE lokale SET lokalid= '$zufall' WHERE ID = '$a';";
    $update = mysql_query($aendern);
    } 

  • #2
    Bitte ändere deinen Threadtitel. Warum? Wie?

    PHP: mysql_query - Manual
    Die Anfrage sollte nicht mit einem Semikolon enden.
    Debugging:SQL - PHP.de Wiki

    Kommentar


    • #3
      jau, das Semikolon in der Query brauchst du nur, wenn du es direkt im MySQL-Kommandozeilen tool eingibst - und in phpmyadmin, wenn du mehrere Anfragen auf einmal losschicken willst

      Kommentar


      • #4
        Danke für die schnelle Antwort, ich hab das Semikolon jetzt entfernt funktioniert aber leider immer noch nicht, das Ergebniss ist immer die gleiche Zahl bei jedem Datenbankeintrag.
        PHP-Code:
        require("sql.php");

        $zahl = 129;
        for(
        $a = 0; $a < $zahl; $a++)
          { 
        $zufall = rand(100000000,1000000000);
        $aendern = "UPDATE lokale SET lokalid= '$zufall' WHERE ID = '$a'";
        $update = mysql_query($aendern);
        }
        ?> 
        PS.: Wie ändere ich den Threadtitel??

        Kommentar


        • #5
          Betätige die Schaltfläche Erweitert, die beim Ändern des Beitrages sichtbar ist.

          Kommentar


          • #6
            also ich würd 2 dinge machen..

            1) echo $aendern vor dem mysql_query ..
            2) $update = mysql_query($aendern) OR die(mysql_error());

            3) ^^ prüf bitte ob deine Tabelle in der Datenbank auch genug Einträge hat (129 müssen es mindestens sein, wegen $zahl=129

            da fällt mir ein .. hast du überhaupt ne Verbindung zum mysql-Server aufgebaut ? ..

            Kommentar


            • #7
              Problem gelöst, komischerweise was das Problem bei:
              PHP-Code:
              OR die(mysql_error()); 
              Vielen Dank

              Kommentar


              • #8
                Zitat von sanofiaaventis Beitrag anzeigen
                Hallo kann mir jemand sagen was an diesem Script nicht funktioniert, ich will für alle Einträge in der Datenbank, bei dem Feld lokalid eine Zufallszahl haben.
                Bitte um Hilfe:

                PHP-Code:
                require("sql.php");

                $zahl = 129;
                for(
                $a = 0; $a < $zahl; $a++)
                  { 
                $zufall = rand(100000000,1000000000);
                $aendern = "UPDATE lokale SET lokalid= '$zufall' WHERE ID = '$a';";
                $update = mysql_query($aendern);
                } 

                Dafür brauchst du aber keine 129 UPDATE Queries abfeuern.

                Code:
                UPDATE lokale SET lokalid = FLOOR(100000000 + (RAND() * (1000000000-100000000))) WHERE ID < 129;
                siehe RAND(): MySQL :: MySQL 5.0 Reference Manual :: 11.6.2 Mathematical Functions

                Kommentar

                Lädt...
                X