Hallo,
habe ein datenbankbasiertes Gästebuch gemacht, und
möchte nun noch einen Vorschaubutton (im neuen Fenster öffnen)
hinzufügen, damit man nochmal den eintrag sieht, bevor man ihn
abschickt (sowie hier ) Wie mach ich das?
DANKE KÄFERLI
Hallo,
habe ein datenbankbasiertes Gästebuch gemacht, und
möchte nun noch einen Vorschaubutton (im neuen Fenster öffnen)
hinzufügen, damit man nochmal den eintrag sieht, bevor man ihn
abschickt (sowie hier ) Wie mach ich das?
DANKE KÄFERLI
Du musst im Prinzip nur den Code nehmen, mit dem du schon das Gästebuch auf der Webseite darstellts. Den musst du natürlich so verändern, dass nur noch ein Eintrag dargestellt wird, und die dafür notwendigen Daten nicht aus der Datenbank auslesen, sondern per post durchs Klicken auf den Vorschau-Button übergeben. Die Daten müssen zusätzlich entwedr noch in hidden Felder gespeichert werden, um beim Klick auf den Back button diese nicht zu verlieren. Oder die machstu die Vorschau auf der selben seite wie das eintragungsformular. Dann kannst du die Daten gleich wieder im Formular anzeigen lassen!
Also z.B. in dein Script etwas nach diesem Muster einbauen (Pseudo-Code):
if ($_POST[‚vorschau button gedrückt‘]) {
// Gästebuch Eintrag nachbilden
echo „Eintrag von“.$_POST[‚name des absenders‘].":";
echo $_POST[‚neuer gästebuch text‘];
//und jetzt ein Formular mit einem Back button und einem Absendebutton
echo „“;
echo „“;
echo „“;
echo „“;
echo „“;
echo „“;
// oder anstelle der back und weiter buttons darunter wieder das Formular zum Erstellen eines Eintrags anzeigen und die übergeben Werte wieder anzeigen
echo „“;
echo „“;
echo „“;
echo „“;
echo „“;
echo „“;
} elseif ($_POST[‚absenden geklickt‘]) {
// hier jetzt den Text ganz normal abspeichern
} else {
// normaler (erster) Aufruf der Seite:
// normales Eintragungsformular anzeigen
}
hoffe ich konnte dir weiter helfen, auch wenns vielleciht etwas konfus klingen mag.
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo,
alternativ zum Vorschlag von Dirk, kannst du auch eine zusätzlich Tabelle der Gästebucheinträge einrichten, in der du temporäre Einträge eingeben kannst. Erst bei endgültigem Absenden werden die Daten wieder gelöscht und in die richtige Tabelle geschrieben.
Gruss, Omar Abo-Namous
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
Hallo,
habe ein datenbankbasiertes Gästebuch gemacht, und
möchte nun noch einen Vorschaubutton (im neuen Fenster öffnen)
hinzufügen, damit man nochmal den eintrag sieht, bevor man ihn
abschickt (sowie hier) Wie mach ich das?
DANKE KÄFERLI
Du musst im Prinzip nur den Code nehmen, mit dem du schon das
Gästebuch auf der Webseite darstellts. Den musst du natürlich
so verändern, dass nur noch ein Eintrag dargestellt wird, und
die dafür notwendigen Daten nicht aus der Datenbank auslesen,
sondern per post durchs Klicken auf den Vorschau-Button
übergeben. Die Daten müssen zusätzlich entwedr noch in hidden
Felder gespeichert werden, um beim Klick auf den Back button
diese nicht zu verlieren. Oder die machstu die Vorschau auf
der selben seite wie das eintragungsformular. Dann kannst du
die Daten gleich wieder im Formular anzeigen lassen!Also z.B. in dein Script etwas nach diesem Muster einbauen
(Pseudo-Code):if ($_POST[‚vorschau button gedrückt‘]) {
// Gästebuch Eintrag nachbilden
echo „Eintrag von“.$_POST[‚name des absenders‘].":";
echo $_POST[‚neuer gästebuch text‘];//und jetzt ein Formular mit einem Back button und einem
Absendebutton
echo „“;
echo „“;
echo „“;
echo „“;
echo „“;
echo „“;// oder anstelle der back und weiter buttons darunter wieder
das Formular zum Erstellen eines Eintrags anzeigen und die
übergeben Werte wieder anzeigen
echo „“;
echo „“;
echo „“;
echo „“;
echo „“;
echo „“;} elseif ($_POST[‚absenden geklickt‘]) {
// hier jetzt den Text ganz normal abspeichern
} else {
// normaler (erster) Aufruf der Seite:
// normales Eintragungsformular anzeigen
}hoffe ich konnte dir weiter helfen, auch wenns vielleciht
etwas konfus klingen mag.
…danke für die schnelle Antwort.
Wie definiere ich aber, das nur der letzte eintrag angezeigt wird?
Also ich klicke auf Vorschau, und es öffnet sich ein neues Fenster
(target=_blank), in welchem nur dieser angezeigt wird - aber wie
selectiere ich das?
DANKE KÄFERLI
Hallo,
alternativ zum Vorschlag von Dirk, kannst du auch eine
zusätzlich Tabelle der Gästebucheinträge einrichten, in der du
temporäre Einträge eingeben kannst. Erst bei endgültigem
Absenden werden die Daten wieder gelöscht und in die richtige
Tabelle geschrieben.Gruss, Omar Abo-Namous
Auch ein interessanter Ansatz, aber wie löse ich das genau mit
den temporären Einträgen?
DANKE FÜR EURE GEDULD! KÄFERLI
Bei diesem Ansatz musst du allerdings bedenken, dass du Einträge wieder löschen musst, falls der User zwar die Vorschau lädt, aber dann nicht auf absenden klickt.
[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]
…danke für die schnelle Antwort.
Wie definiere ich aber, das nur der letzte eintrag angezeigt
wird?
Also ich klicke auf Vorschau, und es öffnet sich ein neues
Fenster
(target=_blank), in welchem nur dieser angezeigt wird - aber
wie
selectiere ich das?DANKE KÄFERLI
Im Prinzip musst du garnichts selektieren. Beim klicken auf Absenden uebergibst du die Daten per POST und zeigst sie im neuen Fenster einfach im selben Design an, wie auch das Gästebuch aussieht.
Dann hast du schon die Vorschau.
Bei diesem Ansatz musst du allerdings bedenken, dass du
Einträge wieder löschen musst, falls der User zwar die
Vorschau lädt, aber dann nicht auf absenden klickt.
Hallo,
das ist richtig, aber das kann man über eine zusätzliche sql-Abfrage (löschen aller alten temporären Gästebucheinträge) erledigen.
Gruss, Omar Abo-Namous