Autor Zpráva
vlcekp1
Profil
Dobrý den.
Tento script má uložit všechny údaje z komentáře.
Když uživatel do pole mail a web nic nevepíše, vše se uloží.
Jakmile však vepíše svůj mail a web, komentář se neuloží.
Pravděpodobně mám chybu někde v těch podmínkách if $email a $web.
Kód scriptu pridatkomentar.php je:

<html>
<head>
<meta name="description" content="">
<meta name="keywords" content="">
<meta http-equiv=Content-Type content="text/html\r\n charset=windows-1250">
<?require_once "spojeni.php" ;?>
<title><?echo "'$title' výsledek operace";?></title>

<font size="large">
</head>
<body>
<?php
$datum = date("Y-m-d");
$jmeno = $_POST['jmeno'];
$email=$_POST['email'];
$web=$_POST['web'];
$komentar = $_POST['komentar'];
$id = $_POST['id'];
$jmeno=HTMLSpecialChars($jmeno); 
$email=HTMLSpecialChars($email);
$web=HTMLSpecialChars($web);
$komentar=HTMLSpecialChars($komentar);
$jmeno=stripslashes($jmeno); 
$email=stripslashes($email);
$web=stripslashes($web);
$komentar=stripslashes($komentar);
$komentar = str_replace("\n"," <br> ", $komentar); 

if ($email=="")
$email="Mail neuveden";
else
$email="<a href='mailto:$email'>e-mail</a>";
if ($web=="")
$web="Web neuveden";
else
$web="<a href='$web'>web</a>";

require_once "spojeni.php";
if ($vysledek = mysql_query( "insert into $clanky2 (jmeno, email, web, komentar, 
idclanku, datum) values ('$jmeno','$email','$web','$komentar','$id','$datum')"))
{
echo "<br>Komentář byl uložen pro článek '$id'.<br>";
if ($komentare == 1)
{
if(!@mail($mail, "komentar", "Dobrý den\r\n. Tento e-mail dostáváte, protože jste 
povolil zasílání informací o nových komentářích.\r\n\r\n Právě byl zanechán 
komentář na vašem webu. Autorem komentáře je ".$jmeno.". Pokud si chcete 
tento komentář prohlédnout, \r\n <a 
href='".$site_url."vypisclanku.php?id=".$id."'>klikněte sem</a> \r\n\r\n Pokud už 
vás tyto zprávy nezajímají, přepište hodnotu proměnné v konfiguraci na 0.\r\n 
Přejeme pěkný den.", 

"Content-Type:text/html;charset=windows-1250\nFrom:$mail"))
{
echo "Informační zprávu pro administrátora těchto stránek se bohužel nepodařilo 

odeslat. Požádejte ho o kontrolu nastavení php.";
}
}
}
else
{
 echo "Komentář se neuložil";
}
?>
<input type=button onclick="history.back()" value="Zpět">

</body>
</html>

Může prosím někdo pomoct?
Děkuji moc.
eny
Profil *
Zkus tohle:


if ($email==""){
$email="Mail neuveden";
}else{
$email="<a href='mailto:$email'>e-mail</a>";
}

if ($web==""){
$web="Web neuveden";
}else{
$web="<a href='$web'>web</a>";
}
bohyn
Profil
eny
Podminky mas dobre. Precti si neco mysql_real_escape_string(). Problemy ti delaji jednoduche uvozovky v dotazu.
vlcekp1
Profil
eny
Pořád, pokud uživatel do položky mail, nebo web něco napíše, tak se to neuloží.
Pokud je políčko odeslané prázdné, vše se uloží.
vlcekp1
Profil
Takže chyba je v tom dotazu insert?
vlcekp1
Profil
Už mi to funguje.
Smazal jsem apostrofy u <a href=' a ještě ten za dolarem a už to funguje.

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: