Ändern einer Seite

In diesem Forum befinden sich alte Themen.
Gesperrt
Zorro
Inaktiv
Beiträge: 4
Registriert: 11. Januar 2009, 11:52

Ändern einer Seite

Beitrag von Zorro »

Hallo,

ich evaluiere gerade die Version 1.1.5 für ein Homepage die ich damit betreiben will. Nach Installation schien auch alles ersteinmal gut zu laufen. (MySQL Version 5.1.30-community, PhP Version 5.1.6, Apache Webserver 2.0.50)

Nun wollte ich mal den Text der Startseite ändern, da erhalte ich beim Speichern den folgenden Fehler:
"Could not save site.
Incorrect integer value: '' for column 'news' at row 1"

Da scheint das Update-Statement nicht korrekt zu sein. Könnt ihr mir bitte helfen.
EasyHP
Administrator
Administrator
Beiträge: 731
Registriert: 1. April 2007, 17:42

Re: Ändern einer Seite

Beitrag von EasyHP »

Hallo,

öffne mal die Seite admin_sites.php im Ordner admin/ und suche:

Code: Alles auswählen

			$text = $_POST['text'];
			$cat = $_POST['cat'];
			$newsfl = $_POST['newsflash'];
			$set_date = $_POST['set_date'];
			$comments_on = $_POST['comments_on'];
			$news = $_POST['news'];
			$level = $_POST['level'];
Ersetze das ...

Code: Alles auswählen

$text = $_POST['text'];
... mit ...

Code: Alles auswählen

$text = mysql_real_escape_string($_POST['text']);
Funktioniert es jetzt? Wenn das nicht geht, Frage: Welchen Browser benutzt du?
Zorro
Inaktiv
Beiträge: 4
Registriert: 11. Januar 2009, 11:52

Re: Ändern einer Seite

Beitrag von Zorro »

Leider nein, der Fehler ist noch immer der selbe.

Ich nutze den Firefox in der Version 3.0.5.

Zorro
EasyHP
Administrator
Administrator
Beiträge: 731
Registriert: 1. April 2007, 17:42

Re: Ändern einer Seite

Beitrag von EasyHP »

Hallo dann ersetze mal ...

Code: Alles auswählen

$newsfl = $_POST['newsflash'];
$news = $_POST['news'];
... mit ...

Code: Alles auswählen

$newsfl = mysql_real_escape_string($_POST['newsflash']);
$news = mysql_real_escape_string($_POST['news']);
Zorro
Inaktiv
Beiträge: 4
Registriert: 11. Januar 2009, 11:52

Re: Ändern einer Seite

Beitrag von Zorro »

Hallo,

auch das hat nicht geholfen.

der Fehler hängt offensichtlich mit den CheckBoxen die sich im unteren Bereich beim Bearbeiten einer Seite befinden zusammen. Ich habe mir mal das Statement ausgeben lassen, welches fehlschlägt:

UPDATE ehp_sites SET title = 'EasyHP-CMS', text = 'HIER STAND DER INHALT DER SEITE, HABE ICH ENTFERNT WEGEN DER ÜBERSICHTLICHKEIT', cat = 'Allgemein', date = '23.01.09, 01:39', set_date = '1', comments_on = '1', news = '', newssite = '2', level = '1' WHERE id = '3'

Die Checkbox news war in diesem Fall nicht angehakt.

Da wird für die Spalte news der Wert '' gesetzt. Damit scheint die DB nicht klar zu kommen, da news ja eine Spalte vom Typ int ist. Kann es sein, dass ich noch bestimmte Einstellungen am Webserver oder der DB vornehmen muss, damit der leere String als NULL oder 0 Wert interpretiert wird? So richtig kann ich mir nicht vorstellen, dass an dieser Stelle der Quellcode fehlerhaft ist, denn immerhin ist das ja eine zentrale Stelle im System.

Wenn ich die Checkbox anhake kommt die folgende Fehlermeldung:

Could not update news table.
Field 'message' doesn't have a default value

Die Änderung an der Seite wurde aber abgespeichert. Und das Statement zum Speichern der news lautet:
INSERT INTO ehp_site_news (site_id, title) VALUES ('2', '-1')

Wenn ich mir die Tabellendefinition im phpMyAdmin anschaue so ist da aber ein Standard-Wert definiert für die Spalte news. Dieser schein aber ignoriert zu werden. Eventuell ist es das gleiche Problem wie bei der Tabelle sites.

Viele Grüße
Zorro
Zorro
Inaktiv
Beiträge: 4
Registriert: 11. Januar 2009, 11:52

Re: Ändern einer Seite

Beitrag von Zorro »

Hallo,

ich habe ein bisschen recherchiert und bin auf folgendes gestoßen:
Der SQL-Server ab Version 5 läuft nach Standardinstallation im
strict
sql-Mode. Dies scheint der Grund zu sein, warum ich auf die Fehler laufe.
Ich habe nun erst einmal auf den sql_mode
MYSQL40
umgestellt. Ein erster Test war erfolgreich.

Hier noch der Link zu dem Forum in dem ich den Hinweis gefunden habe:
http://community.zikula.org/module-Foru ... -48871.htm

und hier der Link zur Anleitung zum ändern des sql_modes:
http://community.zikula.org/index.php?m ... StrictMode

Viele Grüße
Zorro
Gesperrt