Autor Zpráva
vaca
Profil *
Nemam vubec potuchy o jazyku PHP.
Potreboval bych pomoct s jednim skriptem, s jehoz pomoci je odesilana zprava z formulare. Se serverem to spolupracuje a chodi to v pohode.

Potreboval bych jenom aby potvrzeni o uspesnem ci neuspesnem odeslani zpravy, ktere se nasledne zobrazi bylo otevreno do noveho okna a bylo primerene velikosti. Ne pres celou obrazovku. Take by tam mohlo byt tlacitko na zavreni tohoto potrvrzovaciho okna.
A jeste jedna vec. Aby se vymazal formular po odeslani

Mam tam tento skript:

<? if ( Mail("l.plhy@myjov.cz", $predmet, $zprava, "From: " . $mail_odesilatele) )
echo "Zpráva byla odeslána";
else echo "Zprávu se nepodařilo odeslat"; ?>

Diky
Yuhů
Profil
těžko radit na tolik dotazů najednou. Aby se otevřelo nové okno s potvrzením, je pouze věc atributu target v příslušném formuláři. Jak je teď tag form
<form ...>
tak ho změnit na
<form target="_blank" ...>

Jinak ovšem okna s problematikou PHP prakticky vůbec nesouvisí, proto se nedá radit obecně.

Totéž se týká vymazání formuláře -- on je vyplněný z toho důvodu, že ten PHP kód, který jej tvoří, ho rovnou vyplňuje. Je potřeba najít ten kód a změnit ho, aby ho nevyplňoval.
FantomX1
Profil
<?
#Riadky zacinajuce s tymto znakom # su komentare

if ( Mail("l.plhy@myjov.cz", $predmet, $zprava, "From: " . $mail_odesilatele) ) :
echo "Zpráva byla odeslána";
else:

#Do premennej obsah vpis obsah spravy, ktoru chces aby uzivatel videl
#pri otvoreni noveho okna napriklad to co tam je
$obsah="Správu sa nepodarilo odoslať!!!";

#Do premennej nazov vpis nazov novo otvorenej stranky
$nazov='chyba';

echo "<script language=\"javascript\" type=\"text/javascript\">\n<!--\n";
echo "var obsah='$obsah';\n";


#Ak sa vyznas do javascriptu, tu si navolis vlastnosti noveho okna.
echo "var okienko=window.open(\"\",\"$nazov\",\"width=200px, height=200px, top=100px, left=100px, status=0, toolbar=0, location=0, resizable=0, scrollbars=0\")\n";
#Toto je velmi dolezite, vpise to do noveho okna tvoju vystraznu spravu
echo "okienko.document.write(obsah);\n";
echo "//--></script>\n";

endif;
FantomX1
Profil
TO Yuhu: No ale keď dáš otvoriť nové okno pomocou form target='_blank' mimochodom uz sa ma pouzivat target='_new' namiesto '_blank' tak sa otvori okno ale na celu obrazovku a tak ja by som to riesil radsej javascriptom aj ked javascript nemusia mat vsetci zapnuty, alebo mozu mat nastavene blokovanie popup okien.

To vaca: Tomu vymazaniu formularu som celkom nerozumel, chces aby formular zmizol aby sa uz nedala poslat dalsia sprava alebo aby sa len vymazali data z formulara?
Leo
Profil
"a tak ja by som to riesil radsej javascriptom aj ked javascript nemusia mat vsetci zapnuty"

Stejne pak musite pouzit u formulare target, a v nem jmeno okna ktere zvolite ve window.open(druhy argument). Otazka je, jestli je v dane norme (X)HTML kterou pouzivate povoleny vubec target u form. Tipuju, ze v XHTML bude jen ve framesetu, Leo
FantomX1
Profil
NO ja si myslim ze atribut target pri pouziti javascriptu vo formulari pouzit nemusim pretoze html nepozna meno okna ktori otvori javascript, pretoze to meno je vlastne premenna a s premennymi html nedisponuje. Vie sa odvolavat len na konstanty ako _blank, _new, _top, a mena stranok vo framsetoch mozno este na nejake ine, ale v ziadnom pripade nie na javascriptove okna.
llook
Profil
Také můžeš otvírat do nového okna target="_blank" a pak změnit velikost otevřeného okna. Tohle žádný blokovač (ani SP2) neoznačí jako nechtěný pop-up, ale nemůžeš nastavit tolik věcí jako u window.open().

Nikdy jsem to nezkoušel, ale nešlo by něco takového?:
<form target="_blank" onsubmit="this.submit(); this.reset(); return false;">
FantomX1
Profil
No teoreticky by to ist mohlo najprv sa to odosle pomocou javascriptu potom sa vymaze formular a nakoniec sa to neodosle po druhy krat, len si nie som isty ci sa to este predtym nez sa to odosle nevymaze.
vaca
Profil *
Diky moc vsem, kteri mi radite. Jsem moc rad. Ani sem to necekal. Co se tyce toho vymazani formulare tak jsem to myslel tak, ze kdyz zavru to potvrzovaci okno (otevrene do noveho okna), tak se objevi opet stranka s formularem a vyplnenymi texty ketre byly prave odeslany. Chtel bych aby se text vymazal po zavreni potvrzovaciho okna nebo pri odeslani.

ten formular mi zacina:

<FORM target="_blank" name="mp" action="formular.php" onsubmit="return zkontroluj_formular()">

pridal jsem tam to otvirani noveho okna, mozna pouziji ten Javascript, a mam tam take kontrolu vyplneni formulare.

Diky Vaca
Leo
Profil
"NO ja si myslim ze atribut target pri pouziti javascriptu vo formulari pouzit nemusim pretoze html nepozna meno okna ktori otvori javascript, pretoze to meno je vlastne premenna a s premennymi html nedisponuje."

Nemate pravdu. Pokud napisete (v JavaScriptu)

var okno = window.open("stranka.html","okynko","...")

pak ta promenne JS, o ktere mluvite, je okno; ovsem v HTML (v targetu) bude novy window k dispozici jako okynko, Leo
Vaca
Profil
Prosim napiste me nekdo jak vymazat text z formulare, kdyz zavru to potvrzovaci okno (otevrene do noveho okna), tak se objevi opet stranka s formularem a vyplnenymi texty ketre byly prave odeslany. Chtel bych aby se text vymazal po zavreni potvrzovaciho okna nebo pri odeslani.

Diky
Toto téma je uzamčeno. Odpověď nelze zaslat.