formulář na webu nefunguje

Místo pro dotazy a rady ohledně programovacích jazyků (C++, C#, PHP, ASP, Javascript, VBS..) a tvorby webových stránek

Moderátor: Mods_senior

Uživatelský avatar
tobiasekll
Level 4
Level 4
Příspěvky: 1224
Registrován: 01 říj 2011 15:24

formulář na webu nefunguje

Příspěvek od tobiasekll »

Zdravím,
snažím si vytvořit si jednoduchý web. Stáhl jsem si šablonu z netu free a kamarád mi ji upravil podle mých představ. Na webu je formulář sloužící ke kontaktování (kdyžtak screen níže), ten ale nefunguje, když stránku otevřu na mém local pc, emaily prostě nechodí.
Hádám, že celý mail se nastavuje přes PHP, protože ve složce mail, se žádný jiný soubor než toto PHP nevyskytuje. Zkoušel jsem tam zadat svůj email, ale bez výsledku.
Jak mám udělat aby to fungovalo. Je vůbec možné, tenhle formulář zprovoznit na local pc bez toho, aby byl někde u poskytovatele?
php.JPG
formular.JPG
Děkuji moc za odpověď.
MB: MSI B450 Tomahawk
CPU: AMD Ryzen 5 3600X
GPU:MSI Radeon RX 470 GAMING X 8G
RAM: Kingston HyperX Predator DDR4 3333 2x8 GB
CPU Cooler: Scythe Mugen Max
SSD NVMe: ADATA XPG GAMMIX S11 Pro 512 GB
SSD SATA: Crucial MX500 500 GB
Zdroj: EVGA Supernova G2 750 W
Skříň: Nanoxia Deep Silence 3
Windows 10 Pro 64bit
Uživatelský avatar
tobiasekll
Level 4
Level 4
Příspěvky: 1224
Registrován: 01 říj 2011 15:24

Re: formulář na webu nefunguje

Příspěvek od tobiasekll »

Tak jsem si koupil hosting a vše funguje. Ovšem mám jiný problém, formulář nezvládá diakritiku a email přijde rozsypaný...
Nevíte někdo jak na to? Hledám po internetu, ale PHP vůbec nerozumím, nejsem z toho vůbec moudrý.

Kód:

Kód: Vybrat vše

<?php
// Check for empty fields
if(empty($_POST['name'])  		||
   empty($_POST['email']) 		||
   empty($_POST['message'])	||
   !filter_var($_POST['email'],FILTER_VALIDATE_EMAIL))
   {
	echo "No arguments Provided!";
	return false;
   }
	
$name = $_POST['name'];
$email_address = $_POST['email'];
$message = $_POST['message'];
	
// Create the email and send the message
$to = 'jmeno@pl.cz'; // Add your email address inbetween the '' replacing yourname@yourdomain.com - This is where the form will send a message to.
$email_subject = "Website Contact Form:  $name";
$email_body = "Nová zpráva.n\n\"."Detaily:n\n\Name: $namen\n\Email: $email_addressn\n\Message:n\$message";
$headers = "From: noreply@pl.cz"; // We recommend using something like noreply@yourdomain.com.
$headers .= "Reply-To: $email_address";	
mail($to,$email_subject,$email_body,$headers);
return true;			
?>
MB: MSI B450 Tomahawk
CPU: AMD Ryzen 5 3600X
GPU:MSI Radeon RX 470 GAMING X 8G
RAM: Kingston HyperX Predator DDR4 3333 2x8 GB
CPU Cooler: Scythe Mugen Max
SSD NVMe: ADATA XPG GAMMIX S11 Pro 512 GB
SSD SATA: Crucial MX500 500 GB
Zdroj: EVGA Supernova G2 750 W
Skříň: Nanoxia Deep Silence 3
Windows 10 Pro 64bit
Uživatelský avatar
LuCaCZ
Level 3.5
Level 3.5
Příspěvky: 929
Registrován: 21 bře 2011 00:02

Re: formulář na webu nefunguje

Příspěvek od LuCaCZ »

Do hlavičky mailu přidat typ kódování "Content-Type: text/plain;charset=utf-8" pokud se bude posílat mail jako prostý text, nebo jako html "Content-Type: text/html;charset=utf-8" a php uložit taky s kódováním UTF-8

Takže před řádek s mail() přidat

Kód: Vybrat vše

$headers .= "Content-Type: text/plain;charset=utf-8"; 
pravděpodobně to ale bude chtít ještě další header parametry
Uživatelský avatar
tobiasekll
Level 4
Level 4
Příspěvky: 1224
Registrován: 01 říj 2011 15:24

Re: formulář na webu nefunguje

Příspěvek od tobiasekll »

Mohl by si mi prosímtě poslat výsledný kód? PHP vůbec nerozumím.
MB: MSI B450 Tomahawk
CPU: AMD Ryzen 5 3600X
GPU:MSI Radeon RX 470 GAMING X 8G
RAM: Kingston HyperX Predator DDR4 3333 2x8 GB
CPU Cooler: Scythe Mugen Max
SSD NVMe: ADATA XPG GAMMIX S11 Pro 512 GB
SSD SATA: Crucial MX500 500 GB
Zdroj: EVGA Supernova G2 750 W
Skříň: Nanoxia Deep Silence 3
Windows 10 Pro 64bit
Uživatelský avatar
LuCaCZ
Level 3.5
Level 3.5
Příspěvky: 929
Registrován: 21 bře 2011 00:02

Re: formulář na webu nefunguje

Příspěvek od LuCaCZ »

Kód: Vybrat vše

<?php
// Check for empty fields
if(empty($_POST['name'])        ||
   empty($_POST['email'])       ||
   empty($_POST['message'])   ||
   !filter_var($_POST['email'],FILTER_VALIDATE_EMAIL))
   {
   echo "No arguments Provided!";
   return false;
   }
   
$name = $_POST['name'];
$email_address = $_POST['email'];
$message = $_POST['message'];
$nl = "\n\n"; //new line - novy radek
   
// Create the email and send the message
$to = 'jmeno@pl.cz'; // Add your email address inbetween the '' replacing yourname@yourdomain.com - This is where the form will send a message to.
$email_subject = "Website Contact Form:  $name";
$email_body = "Nová zpráva.".$nl."Detaily:".$nl."Name: $name".$nl."Email: $email_address".$nl."Message:".$nl."$message";
$headers = "From: noreply@pl.cz".$nl; // We recommend using something like noreply@yourdomain.com.
$headers .= "Reply-To: $email_address".$nl;
$headers .= "Content-Type: text/plain;charset=utf-8";
mail($to,$email_subject,$email_body,$headers);
?>
Uživatelský avatar
tobiasekll
Level 4
Level 4
Příspěvky: 1224
Registrován: 01 říj 2011 15:24

Re: formulář na webu nefunguje

Příspěvek od tobiasekll »

Ne to nefunguje, a najednou mi začla chodit pošta do spamu. Wtf
Začínám být fakt zoufalý
MB: MSI B450 Tomahawk
CPU: AMD Ryzen 5 3600X
GPU:MSI Radeon RX 470 GAMING X 8G
RAM: Kingston HyperX Predator DDR4 3333 2x8 GB
CPU Cooler: Scythe Mugen Max
SSD NVMe: ADATA XPG GAMMIX S11 Pro 512 GB
SSD SATA: Crucial MX500 500 GB
Zdroj: EVGA Supernova G2 750 W
Skříň: Nanoxia Deep Silence 3
Windows 10 Pro 64bit
Uživatelský avatar
LuCaCZ
Level 3.5
Level 3.5
Příspěvky: 929
Registrován: 21 bře 2011 00:02

Re: formulář na webu nefunguje

Příspěvek od LuCaCZ »

tak řádek

Kód: Vybrat vše

$nl = "\n\n"; //new line - novy radek 
změnit na

Kód: Vybrat vše

$nl = "\n"; //new line - novy radek 
Uživatelský avatar
tobiasekll
Level 4
Level 4
Příspěvky: 1224
Registrován: 01 říj 2011 15:24

Re: formulář na webu nefunguje

Příspěvek od tobiasekll »

To nefunguje vůbec :D
MB: MSI B450 Tomahawk
CPU: AMD Ryzen 5 3600X
GPU:MSI Radeon RX 470 GAMING X 8G
RAM: Kingston HyperX Predator DDR4 3333 2x8 GB
CPU Cooler: Scythe Mugen Max
SSD NVMe: ADATA XPG GAMMIX S11 Pro 512 GB
SSD SATA: Crucial MX500 500 GB
Zdroj: EVGA Supernova G2 750 W
Skříň: Nanoxia Deep Silence 3
Windows 10 Pro 64bit
Uživatelský avatar
LuCaCZ
Level 3.5
Level 3.5
Příspěvky: 929
Registrován: 21 bře 2011 00:02

Re: formulář na webu nefunguje

Příspěvek od LuCaCZ »

Píše to nějakou chybu ?
Jaká je adresa toho webu?
Uživatelský avatar
tobiasekll
Level 4
Level 4
Příspěvky: 1224
Registrován: 01 říj 2011 15:24

Re: formulář na webu nefunguje

Příspěvek od tobiasekll »

Nene prostě pošlu přes ten formulář mail a nedorazí.
web zde web
MB: MSI B450 Tomahawk
CPU: AMD Ryzen 5 3600X
GPU:MSI Radeon RX 470 GAMING X 8G
RAM: Kingston HyperX Predator DDR4 3333 2x8 GB
CPU Cooler: Scythe Mugen Max
SSD NVMe: ADATA XPG GAMMIX S11 Pro 512 GB
SSD SATA: Crucial MX500 500 GB
Zdroj: EVGA Supernova G2 750 W
Skříň: Nanoxia Deep Silence 3
Windows 10 Pro 64bit
Uživatelský avatar
LuCaCZ
Level 3.5
Level 3.5
Příspěvky: 929
Registrován: 21 bře 2011 00:02

Re: formulář na webu nefunguje

Příspěvek od LuCaCZ »

Nu .. furmulář posílá data na souboru https://plantaen.cz/mail/contact_me.php
a jeho obsah jde zobrazit - což je dosti závažná bezpečnostní chyba....

Kód: Vybrat vše

<?php

if ( empty($_POST['name']) || empty($_POST['email']) || empty($_POST['message']) || !filter_var($_POST['email'],FILTER_VALIDATE_EMAIL)) {
  echo "No arguments Provided!";
  exit();
} else {
  $name = $_POST['name'];
  $email_address = $_POST['email'];
  $message = $_POST['message'];
  $email_subject = "Website Contact Form: $name";
  $email_body = ''."\r\n";
  $email_body .= "Nova zprava z webu.\n\n"."Udaje:\n\nJmeno: $name\nEmail: $email_address\n\nMessage:\n$message"; 
  $headers = 'MIME-Version: 1.0'."\r\n";
  $headers .= 'Content-type: text/html; charset=utf-8'."\r\n";
  $headers .= 'From: plantaen <"noreply@plantaen.cz">';
  mail("mail@mail.mail", $email_subject, $email_body, $headers);
  echo "Done!";
  exit();
}

?>
nevidím tam žádnou chybu
Uživatelský avatar
tobiasekll
Level 4
Level 4
Příspěvky: 1224
Registrován: 01 říj 2011 15:24

Re: formulář na webu nefunguje

Příspěvek od tobiasekll »

Ten poslední koód mám použít? Kde v tom kódu mám zadat schránku, do které chci, aby mi přicházeli emaily z webu? :)
Jen, že to v tom kódu nevidím, tak by mě zajímalo, jak to pozná, kam to má jít.

Edit: Tak to funguje a i s diakritikou :), akorát je to vše nalepené nějak na sebe (entery nefungují), jinak díky moc!
MB: MSI B450 Tomahawk
CPU: AMD Ryzen 5 3600X
GPU:MSI Radeon RX 470 GAMING X 8G
RAM: Kingston HyperX Predator DDR4 3333 2x8 GB
CPU Cooler: Scythe Mugen Max
SSD NVMe: ADATA XPG GAMMIX S11 Pro 512 GB
SSD SATA: Crucial MX500 500 GB
Zdroj: EVGA Supernova G2 750 W
Skříň: Nanoxia Deep Silence 3
Windows 10 Pro 64bit
Odpovědět
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Nefunguje nová PC
    od adoyss » » v Problémy s hardwarem
    7 Odpovědi
    10669 Zobrazení
    Poslední příspěvek od martanius
  • Lenovo S-130 nefunguje touchpad
    od mk7605 » » v Problémy s hardwarem
    21 Odpovědi
    18521 Zobrazení
    Poslední příspěvek od mk7605
  • T490s nefunguje trackpoint UPDATE
    od Sadelník1234 » » v Problémy s hardwarem
    3 Odpovědi
    10238 Zobrazení
    Poslední příspěvek od kecalek
  • USB-C hub nefunguje na jednom ASUS notebooku s Thunderbolt 4, na jiném ano
    od Atjov1 » » v Problémy s hardwarem
    10 Odpovědi
    10181 Zobrazení
    Poslední příspěvek od Atjov1

Zpět na „Programování a tvorba webu“