ugrás a tartalomhoz

formokból generált HTML oldal - előnézet megvalósítása

EL Tebe · 2005. Feb. 11. (P), 10.22
Hali mindenkinek!

A véleményeteket kérem, hogyan tudnám azt megvalósítani, hogy
egy űrlap alján legyen 2 gomb: az egyik előnézet a másik pedig elküldés funkcióval.
Az űrlapból vett adatokat php generálja, mindegyiket külön táblasorba.
Azt sikerült megvalósítanom, hogy az "elküldésre" a kövi oldalon megjeleníti a "kitöltött" adatlapot. Az is sikerült, hogy a kitöltött adatokat elküldjem levélben. De mindezeket csak külön-külön. Már csak az nem ok, hogy egybegyúrjam ezt a két lehetőséget és legyen egy előnézeti ablak (itt lehet ellenőrizni az adatokat).
A problémák ott vannak, hogy a generált oldal már nem tárolja a változóadatokat, így arra az oldalra nem tudom elhelyezni az elküldés gombot.
Ha az első oldalon (ahol a formok vannak) ott helyezem el mindkét gombot, akkor viszont egyszerre megcsinálja az új ablak nyitást és az adatok levélben való elküldését is :(

Milyen megoldást ajánlotok, mert már tépem a hajam? :)
 
1

session

Anonymous · 2005. Feb. 11. (P), 10.36
Tárold session-ben!

Nadi
2

Hűha :) Az valamilyen előr

EL Tebe · 2005. Feb. 11. (P), 10.45
Hűha :)
Az valamilyen előre def. változó?
Vagyhogyis?
:(
6

Szerintetek ez így működhe

EL Tebe · 2005. Feb. 11. (P), 12.04
Szerintetek ez így működhet?:

1. form oldala:
űrlapok, elküldésgomb..

2: a táblázatok megjelenítésének oldala:
<?php
session_start();
session_register("$_POST");

print(<TD><TR>$atadott urlapvaltozo1</TD></TR>);
print(<TD><TR>$atadott urlapvaltozo2</TD></TR>);
print(<TD><TR>$atadott urlapvaltozo3</TD></TR>);
?>


3: a mail küldés oldala:
<?php
session_start();

$output="";
foreach($_POST as $key=>$val){
$output.="$key".": "."$val"."\r\n";
}

mail("valaki##kukac##pelda.hu", "valamitárgy", $output);

print("Elküldve");
?>
7

nem

Őry Máté · 2005. Feb. 11. (P), 18.12
nem.
Tömböt nem lehet sessionbe rakni, csak serialize-vel. http://hu2.php.net/manual/hu/function.serialize.php

a foreachben meg az új post tömböt dolgozod föl.

vmi ilysmi kell a 3. ponthoz:
foreach (unserialize($_SESSION['_POST']) as $key => $val)
Maat
8

Köszi a segítséget neked i

EL Tebe · 2005. Feb. 11. (P), 18.46
Köszi a segítséget neked is. Igaz, nem tudom hogy a serialize hogy működik..
Az a foreach()-es téma sajna az általad írt módon nem müxik :(
Lehet és érdemes ilyesmit csinálni (hátha így működik a foreach):

$valtozo = unserialize($_SESSION['_POST']);
foreach ($valtozo as $key => $val).. Így viszont a $valtozó nem tömb.. :(((

Hát egyre inkább elkeseredek.
tegnap éjjel 2 óta ezzel vackolok, már nem látok semmit :(
Pedig annyira egyszerűnek tűnik..
3

szia

Anonymous · 2005. Feb. 11. (P), 10.45
Ha post metódussal küldöd, akkor figyeled, hogy a $_POST tömbben milyen adatok érkeztek és ha nem üresek, akkor trükkösen egy másik ürlapot jelenitesz meg pl. egy if elágazás segitségével - ahol már betöltöd a mezőkbe a kapott értékeket. Alá, vagy fölé pedig kiirhatod őket ha fontosak a formai követelmények stb. Ha valakinek nem felel meg, akkor újra elkdülheti az előnézeti gombbal, ha pedig tetszik a felhasználónak, akkor az elküld gombra kattint és ekkor jön a küldés levélben. Persze ugyanigy a GET-el küldött változókat is figyelheted. Sokan biztosan munkamenet változókba pakolnák az ürlap változóit, de ott is ugyanilyen módszerrel kellene figyelni.
4

A baj ott van, hogy a formáz

EL Tebe · 2005. Feb. 11. (P), 10.52
A baj ott van, hogy a formázás miatt nem a $POST-ot használom, hanem egyesével szedi a változókat az űrlapról.
Ami nincs kitöltve (mert nem szükséges) azt nem jeleníti meg. Ami viszont ki lett töltve, ahhoz generál egy táblasort 2 oszloppal: megnevezés: és $avaltozoneve.
Ráadásul a form úgy van megoldva, hogy előre kitöltött cellák vannak segítség képp, amire ha rákattint az illető, kitörlődik a tartalma..

Nem lehet valahogy az összes felhasznált és nem üres változót egy másik változóban ideiglenesen tárolni? És azt küldeni el a mél()-lel, amikor továbblép az illető?
Én erre gondoltam..
5

példul úgy, hogy a generál

EL Tebe · 2005. Feb. 11. (P), 11.06
példul úgy, hogy a generált oldal legelejére csinálok valami ilyesmit(?):

<?
$osszes=$POST
?>

Majd a lap aljára egy "ugrás a kövi oldalra" és ott
include-dal mélben elküldöm a $osszes -t..

Persze ez egy nagyon gyér megoldás tőlem és biztos nem müxik :)