Seite 1 von 2
Datenbank Inhalt beim Speichern leer?!
Verfasst: So 5. Jun 2005, 22:37
von Oktay
Hallo,
Wenn ich unter Styls/Module einen Output Code Speichere und dieser zu lang ist werden die Datenbankinhalte gelöscht und sind dann leer?
Speicher ich einen kurzen Code wird dieses ganz normal gespeichert?
Woran kann das liegen oder hat jemand einen tip wo ich suchen kann????
Gruß
Oktay
Verfasst: Mo 6. Jun 2005, 07:56
von emergence
welche contenido version ?
steht was im errorlog.txt ?
Verfasst: Mo 6. Jun 2005, 07:59
von Oktay
Contenido Version 4.4.5
Das errorlog bleibt leer.
Wenn ich z.B. den Orginal inhalt vom styl/module/hauptnavigation/output nur wieder speichern möchte wird der inhalt gelöscht.... kürze ich den Code um ein paar zeilen ein wird code gespeichert....
Verfasst: Mo 6. Jun 2005, 08:04
von emergence
die berechtigungen der errorlog.txt stimmen vielleicht nicht...
welche mysql version ?
hat dein db user das recht lock table ?
Verfasst: Mo 6. Jun 2005, 08:36
von Oktay
PHP 4.3.11
MySQL 4.0.24-log
Apache/2.0.54
Errorlogs werden wenn ich einen unsinnigen code in den output schreibe geschrieben....
Locktabel ist gesetzt. Wenn ich einen etwas kürzeren code einfüge wird die Speicherung übernommen.... und es funzt normal.
Wenn der text zu lang wird wird der inhalt gelöscht....
Verfasst: Mo 6. Jun 2005, 08:41
von emergence
vielleicht liegt es ja an den paar zeilen code die du löscht...
wenn du nur diese paar zeilen versuchst zu speichern gehts dann ?
Verfasst: Mo 6. Jun 2005, 08:58
von Oktay
den fügt auch auch ein..... hat einscheinend etwas mit der länge des codes zu tun....
ist übrigens der orginal code....
Code: Alles auswählen
<?php
/***********************************************
* CONTENIDO MODUL - OUTPUT
*
* Modulname : Navigation 1.1
* Author : Jan Lengowski
* Copyright : Contenido - four for business
* Created : 15-05-2003
* Modified : 26-05-2003
************************************************/
.......
[/code]
Verfasst: Mo 6. Jun 2005, 10:47
von emergence
hmm...
sieh dir mal via phpmyadmin con_mod die größe der felder
input, output an...
bei mir steht das beide male auf longtext und es sollte damit auch ohne weiteres funktionieren...
du kannst auch einfach den sql befehl
ausführen...
als ergebniss erhalte ich bei einer 4.4.5
Code: Alles auswählen
CREATE TABLE `con_mod` (
`idmod` int(10) NOT NULL default '0',
`idclient` int(10) NOT NULL default '0',
`name` varchar(255) NOT NULL default '',
`description` text,
`deletable` tinyint(1) default NULL,
`input` longtext NOT NULL,
`output` longtext NOT NULL,
`template` text NOT NULL,
`static` tinyint(1) NOT NULL default '0',
`author` varchar(32) NOT NULL default '',
`created` datetime NOT NULL default '0000-00-00 00:00:00',
`lastmodified` datetime NOT NULL default '0000-00-00 00:00:00',
PRIMARY KEY (`idmod`),
KEY `idclient` (`idclient`),
KEY `idclient_2` (`idmod`,`idclient`),
KEY `idmod` (`idmod`),
KEY `idclient_3` (`idclient`)
) TYPE=MyISAM
Verfasst: Mo 6. Jun 2005, 11:13
von Oktay
Daran hatte ich auch schon gedacht... und es Kontroliert....
Die Tabelle ist exakt die selbe....
`input` longtext NOT NULL,
`output` longtext NOT NULL,
wenn der Platz nicht ausrichen würde, würde er doch sowieso den Text kürzen....
er löscht den inhalt bei mir aber...
könnten das irgendwelche PHP buggs sein?
Verfasst: Mo 6. Jun 2005, 11:36
von emergence
hmm...
das ist ein blöder fehler, den ich so nicht weiter eingrenzen kann..
du kannst mal versuchen
functions.mod.php
-> modEditModule
nach der if abfrage
ergänz mal ein
echo $sql."<br>";
und sieh dir das query an...
Verfasst: Mo 6. Jun 2005, 12:20
von Oktay
wenn ich weniger code einfüge sieht es richtig aus:
Code: Alles auswählen
UPDATE con_mod SET name='test', description='test', input='test', output='test', template='', author='admin', lastmodified='2005-06-06 13:18:52' WHERE idmod='18'
wenn ich den langen code einfügen möchte verschluckt er sich daran:
Code: Alles auswählen
UPDATE con_mod SET name='test', description='test', input='test', output='', template='', author='admin', lastmodified='2005-06-06 13:16:16' WHERE idmod='18'
zumindest liegt es jetzt nicht an der MySQL DB
Verfasst: Mo 6. Jun 2005, 12:36
von emergence
die variable $output ist dann einfach leer ?
auch nicht schlecht...
etwas weiter oben
davor setzt du
echo "vorher: ".htmlspecialchars($output)."<br><br>";
und danach
echo "danach: ".htmlspecialchars($output)."<br><br>";
vielleicht liegts ja an der set_magic_quotes_gpc funktion...
Verfasst: Mo 6. Jun 2005, 12:54
von Oktay
Ist vorher auch schon leer....
am 13.4.2005 wurde auf dem Server ein PHP update durchgeführt.... ob es etwas damit zu tun hat?
Verfasst: Mo 6. Jun 2005, 13:54
von emergence
Oktay hat geschrieben:Ist vorher auch schon leer....
am 13.4.2005 wurde auf dem Server ein PHP update durchgeführt.... ob es etwas damit zu tun hat?
wird sicher was damit zu tun haben, nur wüsste ich nicht was...
ergo -> das is schlecht...
du könntest noch die phpinfo checken...
-> größe von post_max_size
der input bereich is ja vermutlich auch davon betroffen ?
Verfasst: Mo 6. Jun 2005, 14:03
von Oktay
post_max_size 50M
Sind das 50MB?! denke das reicht oder???
Richtig schlau werde ich jetzt leider auch nicht...
Ach übrigens vielen dank für deine Bemühungen!!! Wenn ich mal in Österreich zum Boarden bin gebe ich dir ein Bierchen aus
