PBernsdorf Posted August 21, 2007 Report Share Posted August 21, 2007 hallo, das gästebuch habe ich unter 1und1 einwandfrei laufen. aber jetzt mit host europe fehlt der eintrag des kommentars (entry_text / $gb_text) in der db. das sollte an dieser stelle sein, oder? $gb_text = strip_tags($gb_text); xtc_db_query("insert into " . TABLE_GUESTBOOK_DESCRIPTION . " (entry_id, languages_id, entry_text) values ('" . (int)$insert_id . "', '" . (int)$languages_id . "', '" . xtc_db_input($gb_text) . "')");[/php] ich krieg's nicht hin. vielleicht hat jemand einen tipp. danke im voraus. petra Link to comment Share on other sites More sharing options...
PBernsdorf Posted August 21, 2007 Author Report Share Posted August 21, 2007 ich wäre für den kleinsten hinweis dankbar. grüße, petra Link to comment Share on other sites More sharing options...
Kaffeetante Posted August 21, 2007 Report Share Posted August 21, 2007 Hi - welche Datei meinst Du denn, die guestbook.php? In der habe ich so eine Variable gar nicht. Schau Dir doch mal meinen anderen Thread zum Guestbook mal an, da ist eine schon mal von anderer Seite berichtigte guestbook.php drin - vorausgesetzt, das passt zu Deiner Shop-Version. Grüße Susanne Link to comment Share on other sites More sharing options...
PBernsdorf Posted August 22, 2007 Author Report Share Posted August 22, 2007 hi susanne, es handelt sich um die media/content/guestbook.php, wo das gästebuch aufläuft. ich habe das noch genauer untersucht. wenn ein text erfasst wird, wir dieser nicht als eintrag erkannt und läuft auf den fehler "ihr beitrag muss noch 20 Zeichen haben." wenn ich das im guestbook.php auskommentiere // check values if (strlen($gb_text)< GUESTBOOK_TEXT_MIN_LENGTH) { $error = true; $error_text .= ERROR_GUESTBOOK_TEXT . '<br>'; } [/php] dann lässt sich zwar der text erfassen, wird aber nicht in der db eingetragen, aber die email-adresse etc. ist da. ich denke, der texteintrag wird erst gar nicht erkannt und kann dadurch auch nicht in der db landen. das fängt wohl hier schon an [php]else if ($action == 'process'){ // So we post the new entry $gb_text = xtc_db_prepare_input($HTTP_POST_VARS['gb_text']); $error = false; $error_text = ''; } ... hast du oder jemand anderes noch eine idee? grüße, petra Link to comment Share on other sites More sharing options...
Kaffeetante Posted August 22, 2007 Report Share Posted August 22, 2007 Hi, die Textlänge auszukommentieren wäre gar nicht nötig, die kannst Du ja in der Konfiguration des Gästebuchs im Adminbereich verändern. Der Fehler liegt hier nicht im Bereich "post", sondern im Bereich "entry" und hier sieht Deine php-Datei ein wenig anders. In der von mir verwendeten Datei sieht es so aus: *now we can insert ************************************************************************************************/ xtc_db_query("insert into " . TABLE_GUESTBOOK . " (visitors_name, visitors_email, date_added) values ('" . xtc_db_input($gb_name) . "', '" . xtc_db_input($gb_email) . "', now())"); $insert_id = xtc_db_insert_id(); xtc_db_query("insert into " . TABLE_GUESTBOOK_DESCRIPTION . " (entry_id, languages_id ... In dieser Version des Gästebuchs wird dem Eintrag eine ID zugewiesen und damit in die DB eingetragen. Welche Shop-Version und welche GB-Version benutzt Du denn? Link to comment Share on other sites More sharing options...
PBernsdorf Posted August 22, 2007 Author Report Share Posted August 22, 2007 Hi Susanne, danke für deine Info. Die ID wird ja auch zugewiesen und mit Name und Email in der DB eingetragen - NUR halt der Text nicht. Bei mir sieht die guestbook.php an der stelle so aus: // Now we can insert xtc_db_query("insert into " . TABLE_GUESTBOOK . " (visitors_name, visitors_email, date_added) values ('" . xtc_db_input($gb_name) . "', '" . xtc_db_input($gb_email) . "', now())"); $insert_id = xtc_db_insert_id(); //Änderung TAGS werden entfernt $gb_text = strip_tags($gb_text); xtc_db_query("insert into " . TABLE_GUESTBOOK_DESCRIPTION . " (entry_id, languages_id, entry_text) values ('" . (int)$insert_id . "', '" . (int)$languages_id . "', '" . xtc_db_input($gb_text) . "')");[/PHP] Wobei ich auch schon getestet habe, wie das funktioniert, wenn ich folgendes auskommentiere: [PHP]//Änderung TAGS werden entfernt $gb_text = strip_tags($gb_text);[/PHP] Aber ich laufe immer auf die Meldung, dass der Beitrag zuwenig Zeichen hat. Shopversion SP2 und GB-Version 3.04 Grüße, Petra Link to comment Share on other sites More sharing options...
Kaffeetante Posted August 22, 2007 Report Share Posted August 22, 2007 Hi Petra, wie gesagt, die Zeichenlänge der Einträge kann im Admin-Bereich geändert werden. Der Code $gb_text = strip_tags($gb_text); scheint mir mehr als merkwürdig - es fehlt die Anweisung den Text mit der entsprechenden ID auch tatsächlich in die DB einzutragen: $insert_id = xtc_db_insert_id(); Lade Dir doch mal die überarbeitete php-Datei in folgendem Thread runter und versuchs mal mit der: http://www.xt-commerce.com/forum/showthread.php?t=49436 Damit müßte es funktionieren. Grüße Susanne Link to comment Share on other sites More sharing options...
PBernsdorf Posted August 23, 2007 Author Report Share Posted August 23, 2007 hallo susanne, vielen dank für deine info. das mit der einstellung der anzahl zeichen im admin ist klar. aber selbst wenn ich einen text anlege mit mehr als den vorgegebenen zeichen, kommt die fehlermeldung. daher war ich davon ausgegangen, dass nicht erkannt wird, ob ein text vorhanden ist. und der code in der media/content/guestbook.php bei mir hat doch auch das "insert": //Now we can insert xtc_db_query("insert into " . TABLE_GUESTBOOK . " (visitors_name, visitors_email, date_added) values ('" . xtc_db_input($gb_name) . "', '" . xtc_db_input($gb_email) . "', now())"); $insert_id = xtc_db_insert_id(); xtc_db_query("insert into " . TABLE_GUESTBOOK_DESCRIPTION . " (entry_id, languages_id ... //Änderung TAGS werden enfernt $gb_text = strip_tags($gb_text); oder muss das noch an eine andere stelle? das mit den TAGS hatte ich ja auch schon auskommentiert. hat aber alles nichts gebracht. das erwähnte file betrifft ja den admin-bereich. ich habe das einfach mal ausgetauscht, aber das hat auch nix geändert. oder gibt es noch ein anderes guestbook.php für den content? grüße, petra Link to comment Share on other sites More sharing options...
PBernsdorf Posted August 24, 2007 Author Report Share Posted August 24, 2007 so, hab's doch noch gelöst. es lag wohl an den einstellungen bei host europe. nicht nur die "allow-call-time-pass-reference" sondern auch die "register-long-arrays" musste bei he auf "on" gesetzt werden. Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.