Zum Inhalt springen

SQL Abfrage klappt nicht ganz


Empfohlene Beiträge

Hey Community,

ich bereite mich für meine Ausbildung (FI/Anwendungsentwicklung) die im August anfängt vor.

Aktuell schreibe ich an einem Netflix-Klon. Es handelt sich um eine Website, die lokale Videodateien von meinem Rechner in den Browser bringt, mit allen Vorteilen die Netflix bietet (Skip intro, autopause video etc.). Das Projekt nenne ich ganz kreativ 'Flixnet'.

Damit der User beim nächsten Öffnen des Videos wieder dort fortfährt, wo er aufgehört hat, wird in einem Intervall von 8 Sekunden eine Javascript Funktion mit AJAX ausgeführt, die die Episoden-ID und einen Zeitstempel übermittelt. Anhand der Episoden-ID wird die Staffel und die relative Episodennummer ermittelt. Anschließend werden diese Daten in eine Tabelle namens 'c_set' übertragen.

Komischerweise funktioniert das nur zum Teil. Der Zeitstempel wird in der Datenbank aktualisiert, die Staffel und Episode jedoch nicht. Das kann ich mir absolut nicht erklären. Um sicherzustellen, dass die Werte für Staffel und Episode richtig ermittelt werden, habe ich eine Testtabelle erstellt und füttere diese mit den Informationen. Und dort klappt es auch, jedoch nicht in der 'c_set' Tabelle.

Hier der Code:

[...]
if($reqresult->num_rows > 0){
  //Update
  $updstatement = "UPDATE c_set SET sec = '$timestamp', se = '$upseason', ep = '$upepisode' WHERE c_ID = '$c_ID' AND u_ID = '$u_ID';";
  mysqli_query($db,$updstatement);

	//Test
        $testsql = "INSERT INTO testtable (season,episode) VALUES ('$upseason','$upepisode');";
        mysqli_query($db,$testsql);
        unset($testsql);

  unset($updstatement);
}
[...]

 

Ich habe mich mehrmals vergewissert, dass alle Spaltennamen richtig geschrieben sind.

Also, wie kann es sein, dass die Testtabelle z.B. season = 2 und Episode = 1 richtig abspeichert, die c_set Tabelle aber nur das Attribut sec aktualisiert und se und ep unangetastet lässt?

 

Hoffe jemand versteht was mein Problem ist und kann mir helfen ?

mfg Nabrizzy

Bearbeitet von Nabrizzy
Link zu diesem Kommentar
Auf anderen Seiten teilen

Schuss ins Blaue: SET ist ein "reserved keyword" ;) Sprich, es darf nicht in zB Tabellen-Namen verwendet werden (Bei Groß- und Kleinschreibung bin ich nicht 100% sicher, jedoch dürfte das hier zutreffen).

Was auch erklären würde, dass es funktioniert, wenn du etwas anderes als "c_set" verwendest - siehe zb https://dev.mysql.com/doc/refman/5.5/en/keywords.html

Kriegst du eine entspr. Fehlermeldung?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...