• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

[ERLEDIGT] MySQL Update Problem mit Variablen

berl1n

Neues Mitglied
Hallo.

Erstmal vorweg: Ich habe noch nicht viel Erfahrung mit MySQL. Meine letzten Arbeiten damit liegen einige Jahre zurück (Schule).

Ich hatte ja schon in einem anderen Thread gefragt wie ich es hinbekomme das eine Seite schneller geladen wird, auf der Inhalten von anderen Seiten abgefragt werden. Da es meiner Meinung nach ausreicht wenn diese Inhalte nur alle 30min (es würde eigentlich wahrscheinlich sogar einmal am Tag reichen, aber egal) aktualisiert werden, habe ich mich dazu entschlossen diese Inhalte in einer Datenbanktabelle zu speichern. Aktualisiert werden sie dann durch cronjobs, welches eine bestimmte php Datei aufruft, die diesen Befehl ausführen soll. Hier ist die entscheidende Funktion in dieser Datei:

PHP:
function dbupdate(){
        $mangas = mysql_query("SELECT aniSearch_ID FROM mangas");
        print "BLA";
        while ($mangas2 = mysql_fetch_array($mangas, MYSQL_BOTH)) {
            print "BLA2";
            $aniSearch_ID=$mangas2['aniSearch_ID'];
            print "BLA3";
            $wertung=anisearchmangarating($aniSearch_ID);
            mysql_query("UPDATE mangas SET aniSearch_Wertung = '".$wertung."' WHERE aniSearch_ID = '".$aniSearch_ID."'")or die(mysql_error());
            print "BLA4";
        }
    }

Die Funktion anisearchmangarating() liest von einer anderen Website (anisearch.de) eine Wertung für einen Manga aus. Das funktioniert auch so wie es soll und wurde von mir auch schon mehrmals getestet. Die ganzen BLAs werden auch richtig ausgegeben (also in der richtigen Anzahl). Außerdem wird auch die Variable $wertung richtig ausgegeben (wenn ich sie ausgeben lasse). Es verändert sich aber nichts an der Datenbank.

Könnt ihr mir sagen woran das liegt und was ich ändern muss?

Danke :)
 
Zuletzt bearbeitet von einem Moderator:
Werbung:
Fehlt evtl. die Verbindung zur Datenbank?

Gibt es eine Ausgabe von mysql_error()?

Was passiert, wenn Du dir das UPDATE-Statement ausgeben lässt und es mal manuell in der Datenbank ausführen lässt?
 
die verbindung zur datenbank wird am anfang mit "mysql_connect("localhost","username","password");" hergestellt. außerdem werden ja in der funktion schon daten aus der datenbank ausgelesen. mysql_error() gibt nichts aus. ich werd mal gucken ob ich den fehler finde.

EDIT: Ich hab den Fehler gefunden. Es lag doch an den Funktionen die die Daten von der anderen Website geholt haben. Als ich die Funktionen nur für die Tabelle brauchte reichte die print Anweisung noch aus. Aber jetzt brauchte ich natürlich eine return Anweisung. Der Thread kann also geschlossen werden.
 
Werbung:
Zurück
Oben