Zum Inhalt springen

UPDATED-Probleme - mysql


Gast

Empfohlene Beiträge

Hi,

ich hab grad mal wieder ein Problem, dass mich nicht voran bringt. :(

und zwar: ich in der tabelle todo ist ein feld "status", der standardmäßig mit "---" belegt ist. nun möchte ich beim Klick auf einem Button "erledigt" ein UPDATE durchführen. die Abfrage ist wie folgt:

if($erledigt)
{
$sql3=mysql_query("UPDATE todo SET status='erledigt' WHERE status=".$_GET['erledigt']);
if($sql3){
echo " | <b>Erfolg</b>";
}

else {
echo " | <b>Fehler</b>";
}
}[/PHP]

Zwar wird beim Klick auf den Button "Erfolg" ausgegeben, allerdings wird kein Update in der Tabelle durchgeführt. :(

Weiß jemand vielleicht, woran das liegt bzw. was ich falsch mache?

Danke, Marcus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hallo,

hat der Datenbankuser das Updaterecht?

Ist die Spalte status lang genug um das Wort erledigt aufzunehmen?

Frank

Hi Frank,

meines Wissens nach hat der User das Updaterecht. Andernfalls gäbe es eine Fehlermeldung, oder?

Die Spalte "status" is varchar(255). Also das sollte nicht das Problem sein...

Vielleicht mache ich auch was falsch :(

jedenfalls versuche ich das feld status über task_id upzudaten.

oder vielleicht

UPDATE todo SET status='erledigt' WHERE status=".$_GET['task_id']

-> task_id wird als wert über die URL (...php?erledigt=1) übermittelt. Allerdings funzt das auch nicht :(

Marcus

Link zu diesem Kommentar
Auf anderen Seiten teilen

Bau doch mal folgendes in die Seite ein.


echo "UPDATE todo SET status='erledigt' WHERE status=".$_GET['erledigt'];
[/php]

Und den SQL Code den er Dir dann ausgibt, gibst Du direkt bei MySQL ein. Entweder über die Kommandozeile oder über phpMyAdmin oder oder oder.

Vielleicht sieht man dann etwas mehr.

Frank

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

in der tabelle todo ist ein feld "status", der standardmäßig mit "---" belegt ist.

[...]

"UPDATE todo SET status='erledigt' WHERE status=".$_GET['erledigt']

[...]

URL (...php?erledigt=1) übermittelt.

Wenn status mit "---" belegt ist findet die Abfrage "WHERE status = 1" keinen Datensatz der upgedated werden kann.

Wenn du in deiner Tabelle ein Feld ID hast solltest du das nutzen um den Satz zu bestimmen. Oder halt was anderes eindeutiges.

Link zu diesem Kommentar
Auf anderen Seiten teilen

hm, ich hab jetzt ma

$sql3=mysql_query("UPDATE todo SET status=2 WHERE status=1 AND task_id=$task_id");

als Statement geschrieben. Es scheint zu funtzen.

Allerdings hab ich jetzt ein anderes Problem. Beim Klick auf das Icon, das das Update durchführt, wird die Änderung nicht angezeigt. Bei einem Reload der Seite, ist die Änderung dann sichtbar.

Wie kann ich das ändern?

Gruß, Marcus

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...