YourWBB


yourWBB » yourWBB Misc * » Das Proggen » MySQL und PHP » Abfrage will nicht funktionieren » Hallo Gast [Anmelden|Registrieren]
Letzter Beitrag | Erster ungelesener Beitrag 3.225 Views | | Thema zu Favoriten hinzufügen

Neues Thema erstellen Antwort erstellen

Zum Ende der Seite springen Abfrage will nicht funktionieren
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
Simps-O-Rama
Mitglied


Dabei seit: 19.06.04
Beiträge: 3.165

Wütend Abfrage will nicht funktionieren Antworten Zitieren Editieren Melden       UP

Ich arbeite gerade an einem kleinen CMS für meine Website.
Seiten erstellen - funktioniert ohne Probleme
Ausgabe - funktioniert auch
Nur beim bearbeiten gibt's Probleme.
php:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
   <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Edit a content-item</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="style.css">
</head><body>
<?
  $verbindung mysql_connect("xxx","xxx",xxx") or die
  ("Cannot connect to database");
  mysql_select_db("xxx") or die
  ("database doesnt exist");
  $content=$_POST['content'];
  $title=$_POST['title'];
  $id=$_POST['id'];
  
  if ( $title == "" ) {
   echo "<div class="error\">Please fill out all fields!</div>" ;
}
 elseif ( $content == "" ) {
   echo "<div class=\"error\">Please fill out all fields!</div>" ;
}
else {
  $abfrage "UPDATE contents Set id = $id, title = $title, content = $content WHERE ID = $id";
   echo "<div class=\"noerror\">Successfully updated the content-item</div>" ;
  $update mysql_query($abfrage);
}
  mysql_close($verbindung);
  ?>
  </body>
  </html>
  

Es kommt dann "Successfully updated the content-item", es kommt keine Fehlermeldung o.ä.. Der Datensatz wird jedoch nicht geändert - weiß jemand, woran's liegt?

Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von Simps-O-Rama: 04.12.06 21:31.

04.12.06 21:24 Simps-O-Rama ist offline E-Mail Finden Als Freund hinzufügen
[kamui]
~


images/avatars/avatar-4963.gif

Dabei seit: 27.04.05
Beiträge: 2.992

Antworten Zitieren Editieren Melden       UP

Mach mal bei dem Query ein " or die(mysql_error()); " dahinter, dann wird dir der MySQL-Fehler ausgegeben, wenn es einer ist.

Würde außerdem den UPDATE-Befehl allgemein etwss ändern, etwa so:
php:
1:
2:
3:
$abfrage 'UPDATE contents SET "'.((is_numeric($id))?('id="'.$id.'", '):('')).'
title="'.addslashes($title).'", content="'.addslashes($content).'" WHERE id="'.$id.'"';
$update mysql_query($abfrage) or die(mysql_error());


Wenn du kein " addslashes() " machst und in dem String ein Anführungszeichen vorkommt, denkt er, es wäre vorbei und gibt dir Fehler aus ^y^

EDIT2:// Gerade in einem CMS, wo man oft solche Funktionen verwendet, würde ich Klassen / Funktionen empfehlen, dann musst du bei einem kleinen Fehler nur eine Datei editieren und nicht alle smile

Dieser Beitrag wurde 3 mal editiert, zum letzten Mal von [kamui]: 04.12.06 22:50.

04.12.06 22:42 [kamui] ist offline Finden Als Freund hinzufügen
Simps-O-Rama
Mitglied


Dabei seit: 19.06.04
Beiträge: 3.165

Themenstarter Thema begonnen von Simps-O-Rama
Antworten Zitieren Editieren Melden       UP

Vielen Dank schon mal.

Hm... Einen MySQL Error gibt es bei der ersten Version (leicht verändert) nicht, funktioniert trotzdem nicht unglücklich

Bei deinem kommt leider ein Fehler:
Zitat:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '" title="bla", conte
05.12.06 13:16 Simps-O-Rama ist offline E-Mail Finden Als Freund hinzufügen
[kamui]
~


images/avatars/avatar-4963.gif

Dabei seit: 27.04.05
Beiträge: 2.992

Antworten Zitieren Editieren Melden       UP

Habe ausversehen ein Anführungszeichen vor die If-Abfrage gesetzt ...

php:
1:
2:
3:
$abfrage 'UPDATE contents SET '.((is_numeric($id))?('id="'.$id.'", '):('')).'
title="'.addslashes($title).'", content="'.addslashes($content).'" WHERE id="'.$id.'"';
$update mysql_query($abfrage) or die(mysql_error());
05.12.06 16:15 [kamui] ist offline Finden Als Freund hinzufügen
Simps-O-Rama
Mitglied


Dabei seit: 19.06.04
Beiträge: 3.165

Themenstarter Thema begonnen von Simps-O-Rama
Antworten Zitieren Editieren Melden       UP

Hm... Das seltsame ist: Es kommt kein Fehler, jedoch funktioniert es immer noch nicht.... verwirrt
05.12.06 17:25 Simps-O-Rama ist offline E-Mail Finden Als Freund hinzufügen
Ghostmaster
Das Böse

images/avatars/avatar-4371.gif

Dabei seit: 17.01.04
Beiträge: 6.440
Fähigkeiten: WBB2 Profi
Forenversion: 2.3

Antworten Zitieren Editieren Melden       UP

code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>Edit a content-item</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="stylesheet" href="style.css">
</head><body>
<?php
  $verbindung = mysql_connect("xxx","xxx",xxx") or die
  ("Cannot connect to database");
  mysql_select_db("xxx") or die
  ("database doesnt exist");
  $content=$_POST['content'];
  $title=$_POST['title'];
  $id=$_POST['id'];
  
  if ($title == "") {
   echo "<div class=\"error\">Please fill out all fields!</div>" ;
}
 elseif ($content == "") {
   echo "<div class=\"error\">Please fill out all fields!</div>" ;
}
else {
  $abfrage = 'UPDATE contents SET '.((is_numeric($id))?('id="'.$id.'", '):('')).' title="'.addslashes($title).'", content="'.addslashes($content).'" WHERE id="'.$id.'"';
  $update = mysql_query($abfrage) or die(mysql_error()); 
}
  mysql_close($verbindung);
?>
</body>
</html>


Mal eine evtl. dumme Frage. Woher hollst du dir die Daten wie z.B. $title oder $content Augenzwinkern
Sehe in deinem Script nämlich keine Felder.
05.12.06 17:36 Ghostmaster ist offline Finden Als Freund hinzufügen
Simps-O-Rama
Mitglied


Dabei seit: 19.06.04
Beiträge: 3.165

Themenstarter Thema begonnen von Simps-O-Rama
Antworten Zitieren Editieren Melden       UP

Kommt aus der vorigen Seite Augenzwinkern

Danke Ghost, aber leider funktioniert deins auch nicht unglücklich
05.12.06 17:49 Simps-O-Rama ist offline E-Mail Finden Als Freund hinzufügen
[kamui]
~


images/avatars/avatar-4963.gif

Dabei seit: 27.04.05
Beiträge: 2.992

Antworten Zitieren Editieren Melden       UP

Komisch ...

Was ich gerade noch sehe, du solltest anstatt " if ($title == "") { " lieber empty() verwenden.
05.12.06 17:55 [kamui] ist offline Finden Als Freund hinzufügen
Baumstruktur | Brettstruktur
Gehe zu:

Neues Thema erstellen Antwort erstellen

yourWBB » yourWBB Misc * » Das Proggen » MySQL und PHP » Abfrage will nicht funktionieren