Avatar
Luke Trucino
Člen
Avatar
Luke Trucino:

Ahoj, omlouvám se předem, že zakládám něco, co tu už dávno může být. Jen se bojím, že né přesně v té kombinaci co trápí mě.

Tady je ukázka webu kde je ten formulář www.luke.g6.cz. Je to na tetovací doméně s reklamou.

Dělám formuláře, po kliknutí na submit se mi místo ze stránky index.html přesune stránka na phpko
'send.php', které je prázdné.

<?php
$to = "luketrucino@gma­il.com";
$subject = "Nový_klient_LTsi­te";

$email = $_POST['email'];
$telefon = $_POST['telefon'];
$zprava = $_POST['zprava'];

$body = "
E-mail klienta: $email
Telefon klienta: $telefon
Zpráva klienta: $zprava";

$header = "From: $email";

mail ($to,$subject,$bo­dy,$header);
?>

Mám představu, že by to minimálně zůstalo na tom indexu, ale ještě lépe, kdyby to vyvolalo nějaký element, s textem ,,Zpráva byla úspěšně odeslána.''

První krok tedy bude nejspíš redirekt, chápu logiku, ale v php neumím ani prd. Kód nahoře jsem okoukal na youtube.

Možná ale redirekt nebude to nejlepší, protože to největší přání by bylo, aby se to vlastně po kliknutí na sumbit nepohlo vůbec a jediné co se změní bude, že vyskočí ta hláška. Pokud to ovšem nepůjde jinak než redirektem, tak by bylo dobré vědět, že používám kotvy, a zrovna ta kotva, kde je kontaktní formulář je id="section9"

Děkuji předem za pomoc.

 
Odpovědět 19. října 7:56
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na Luke Trucino
Taskkill:

Pokud je nejlepší verze ta, že to po odeslání nikam nepřejde, tak to tak udělej, použij JavaScript - konkrétně AJAX. V sekci JavaScript je tu kratkej seriálek na tohle téma.

Pokud si na jsko nevěříš, budeš to muset řešit jinak, ale právě JS by přesně splnilo co požaduješ.

Odchytit klik na submit, vyčíst data z formuláře přes getElementById()­.value poslat data postem nebo getem na server, zpátky poslat potvrzení. Na potvrzení jskem nastavit nějakému elementu (tomu potvrzení) show.

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět 19. října 8:16
Avatar
Luke Trucino
Člen
Avatar
Odpovídá na Taskkill
Luke Trucino:

Au... s javascriptem jsem na tom o trochu lépe než s PHP, čili vlastně taky vím hov... :D Udělám to prasácky, v tom php kódu udělám html část, která bude vypadat stjeně jako formuláře na indexu a přes ty formuláře hodím fakovou element vrstvu jako že popup okno, ve kterém bude odkaz zpátky na index.

Tahle varianta by mi vlastně vůbec nevadila, kdybych se dokázal vrátit k těm formulářům na indexu.

Čili prosím o radu, jak udělat dvojitý odkaz. Přesněji myslím to, že prvotně to přesměruje na index.html a poté do ,,#section9'' Ovšem to už nepatří do php, to je javascript. Kdy to vyvolá na jedno kliknutí

  1. href="index.html" a hned za tím 2) href="#section9"
 
Nahoru Odpovědět 19. října 9:10
Avatar
Odpovídá na Luke Trucino
Michal Šmahel (ceskyDJ):

PHP sice z ID (#...) neumí v URL číst, ale přesměrovat na něho může. Takže to můžeš v klidu udělat celé v PHP na jednom řádku přes header().

Nahoru Odpovědět 19. října 18:33
Nejdůležitější je motivace, ovšem musí být doprovázena činy.
Avatar
Taskkill
Redaktor
Avatar
Odpovídá na Luke Trucino
Taskkill:

Kotva - normálně se to dá dát do odkazu, tzn. nejakaURL#idCko
Ukázka z v3 schools:

<a href="html_tips.html#tips">Visit the Useful Tips Section</a>
 
Nahoru Odpovědět 19. října 23:33
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 5 zpráv z 5.