Forum

Doppleter Datenbankeintrag



 
Neues Thema eröffnen   Neue Antwort erstellen    REDAXO Forum Foren-Übersicht -> Allgemeines [R4]
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
hp



Anmeldedatum: 28.03.2008
Beiträge: 1

BeitragVerfasst am: Fr März 28, 2008 1:58 pm
Titel: Doppleter Datenbankeintrag
Antworten mit Zitat
Hallo...



Der gestrige Tag hat echt Nerven gekostet, da ich folgendes Problem einfach net lösen konnte...

Ich habe ein Modul angelegt das mit entsprechende Formulardaten in eine Datenbank schreiben soll...Klappt auch alles wunderbar, nur dass diese Daten 2-fach geschrieben werden...

Das Formular wird nur einmal abgeschickt...ausgabe aller gesendeten Daten bestätigte dies! ->doppletes Senden daher ausgeschlossen!!!

Wenn ich eine redirect nach erfolgreichen Eintrage mache, werden trotzdem die Daten 2 mal in die DB geschrieben...->Fehlerursache noch immer unbekannt

Um das Problem zu finden, wurde nur eine DB-Insert ins Modul geschrieben, keine weitere Formularbehandlung!!!

Code:

$user = new sql();                 
$user->setTable('user');
$user->setValue('hash', $hash);
$user->insert();


Wenn das Modul im Backend aufgerufen wird, werden die Daten nur einmal geschrieben, wird das Modul aber im Frontent angezeigt werden die Daten wieder doppelt geschrieben...->Fehlerursache weiterhin unbekannt

Ich habe absolut keine Ahung an was das liegen könnte und bin daher für jeden Vorschlag zur Fehleridentifizierung dankbar....

hp
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Jan.Kristinus
Erfinder


Anmeldedatum: 24.08.2004
Beiträge: 1611
Wohnort: Wiesbaden

BeitragVerfasst am: Fr März 28, 2008 3:41 pm
Titel:
Antworten mit Zitat
hallo,

vielleicht ist es folgendes.

der Artikel wird im Templates mehrmals ausgelesen.

z.B. sowas:

Code:
if ($this->getArticle()==""){ echo "kein inhalt"; }
echo $this->getArticle();


das fuehrt dazu, dass der article zweimal und damit der php code auch zweimal ausgeführt wird. deswegen am besten den artikel vorher in eine variable speichern und diese dann abfragen und ausgeben..

Code:
$content = $this->getArticle();
if ($content==""){ echo "kein inhalt"; }
echo $content;


vielleicht wars das schon.. lg
jan
_________________
Yakamara Media GmbH & Co. KG | Wandersmannstraße 68 | 65205 Wiesbaden
Tel.: 0611-504.599.21
http://www.yakamara.de/
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden E-Mail senden Website dieses Benutzers besuchen ICQ-Nummer
Laser



Anmeldedatum: 02.04.2008
Beiträge: 1

BeitragVerfasst am: Mi Apr 02, 2008 7:06 pm
Titel:
Antworten mit Zitat
Danke Jan.Kistinus, ich hatte genau denselben Fehler und wäre ohne deinen hilfreichen Post wohl NIE im Leben auf die Idee gekommen, den Fehler dort zu suchen!

Ich arbeite ebenfalls gerade an einem Modul, mit welchem ich Daten in eine eigens erstellte Tabelle einfügen kann, und hatte schon befürchtet, dass ich die new sql(); falsch verwenden würde.

Also bei mir hat dein Trick funktioniert, vielen Dank

P.S.: Leider hab ich am Anfang nicht ganz verstanden, dass man diesen Code ins Template einfügen und abändern muss, und habs deshalb direkt ins Modul kopiert und dort angepasst. Bitte nicht nachmachen, bei mir hat sich der apache (vom xampp paket) mit einem hübschen Memory Error verabschiedet Mr. Green

EDIT: Aja, das Thema sollte man vielleicht auch im R4 Bereich verlinken, denn ich verwende 4.1 und bei mir trat exakt derselbe Fehler auf
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    REDAXO Forum Foren-Übersicht -> Allgemeines [R4] Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.


Powered by phpBB © 2001, 2002 phpBB Group
Deutsche Übersetzung von phpBB.de