Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: Tom Liberec 10. 09. 2013, 10:38:26
-
Na hostingu mám PHP SAFE MÓD.
Nyní mi prográmek na odesílání e-mailů vypisuje tuto chybu :
Warning: mail() [function.mail]: SAFE MODE Restriction in effect. The fifth parameter is disabled in SAFE MODE in /mnt/data/accounts/c/cloudmaster/data/www/mail/form55.php on line 50
Předmětný kus kódu vypadá takto :
if($_ERR != '')
{
$_print = $_ERR;
}
else
{
$to ='tpilar@atlas.cz,tomasvesec@seznam.cz';
$odesilatel = "tpilar@atlas.cz";
$headers = "Zkusebni email ";
mail ($prijemce, $predmet, $text, $headers);
echo'
<script>
alert("Data jsou odeslána")
</script>
';
}
Nevím zda mám dát OFF safe mód nebo zda by chyba nemohla být v tom, že SAFE MÓD nepovoluje alert ?
Dokáže mi někdo znalejší sdělit co je tím pátým parametrem jenž je nepovolen, zakázán ( fifth parameter is disabled ) ?
Navíc v nouzovém režimu ? Google mi vypisuje věty jako bych snad útočil na jádro Apache nebo tak něco ?
Díky.
-
Safe mode? This feature has been DEPRECATED as of PHP 5.3.0 and REMOVED as of PHP 5.4.0. (http://php.net/manual/en/features.safe-mode.php) Nevím, co je tady k řešení... ::)
-
Opravdu je to ten spousteny kod? Napriklad nazvy promennych vubec nesedi a vypada to jako blbost.
-
Blbost to asi bude moje vlastní.
Prostě jsem se do kódu který funguje pokusil naroubovat, vložit jakou si hlavičku a adresu na kterou se to má odeslat.
$to ='tpilar@atlas.cz,tomasvesec@seznam.cz';
$odesilatel = "tpilar@atlas.cz";
$headers = "Zkusebni email ";
mail ($prijemce, $predmet, $text, $headers);
Zřejmě zcela špatně a na špatné místo. Napadlo mě to pouze proto, že by se to mělo nejprve odeslat a teprve potom psát, že je to odesláno.
-
SAFE mód v tom je zcela nevinně, nefunguje to ani pokud jej odblokuji.
-
1/ RTFM: http://php.net/manual/en/function.mail.php
2/ Ten safe mode zlikviduj, je to k ničemu.
-
Nekamenujte mě, ale pokud ti jde pouze o to aby se nezobrazovala ona hláška, tak použij před funkcí @
-
Jinak odpověď na původní otáku - rozhodně opravit kód :) Nejlépe úplně celý :)
-
Vypadá to, že mě směřujete správným směrem, že to i lama jako já za nějakou tu hoďku dá do kupy.
Jde mi i o to, zda jsem se odeslání emailu, dal na správné místo ke konci té validace ?
elseif(!isset($pass) OR $pass == '')
{
$_ERR.='<span style="color:red">Chyba: Zadejte heslo!</span>';
}
elseif(empty($text))
{
$_ERR.='<span style="color:red">Chyba: Napište zpravu!</span>';
}
/*------NOVE----------*/
if($_ERR != '')
{
$_print = $_ERR;
}
else
{
$to ='tpilar@atlas.cz,tomasvesec@seznam.cz';
$odesilatel = "tpilar@atlas.cz";
$headers = "Zkusebni email ";
mail ($to, $name, $prijmeni, $predmet, $text, $pass);
echo'
<script>
alert("Data jsou odeslána")
</script>
';
}
Prostě aby mě to neustále nekopalo do zadku a já ani nevěděl odkud.
Celé to opravovat nemůžu není to moje dílo, celé bych to nedal v žádné případě do kupy.
-
mail ($to, $name, $prijmeni, $predmet, $text, $pass);
bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
Prohlédni si pořádně tu dokumentaci.
<?php
// The message
$message = "Line 1\r\nLine 2\r\nLine 3";
// In case any of our lines are larger than 70 characters, we should use wordwrap()
$message = wordwrap($message, 70, "\r\n");
// Send
mail('caffeinated@example.com', 'My Subject', $message);
?>
Z tohohle to musí být jasné.
-
Není, nestačím na to. Lack of my intellect, study, experience
Pro někoho z Vás to bude dobrá příležitost jak si vydělat 500 Kč.
Takže je to v zakázkách : http://forum.root.cz/index.php?topic=7274.0
Obávám se, že bych to z mojí hlavou nedal dohromady před odchodem do starobního důchodu ...........