Mam taki kod, który odpowiedzialny jest za wysyłanie emaili ze strony www.
[php]
<form action="kontakt?mail=ok" method="POST" >
<td colspan="3"><input type="text" name="odkogo" value="<? echo $_POST['odkogo']; ?>">
</td>
<td colspan="3"><input type="text" name="mail" value="<? echo $_POST['mail']; ?>">
</td> <td colspan="3"><SELECT input type="text" name="mailtoperson" onChange="<? echo $_POST['mailtoperson']; ?>">
<OPTION VALUE="">Wybierz adresata listu
<OPTION VALUE="email1@poczta.pl">email1
<OPTION VALUE="email2@poczta.pl">email2
<OPTION VALUE="email1@poczta.pl,email2@poczta.pl">Wyślij do wszystkich
<td colspan="3"><input type="text" name="temat" value="<? echo $_POST['temat']; ?>">
</td> <td valign="top">Treść:
</td> <td colspan="3"><textarea name="tresc" rows="8" input type="text" textarea="textarea"><? echo $_POST['tresc']; ?></textarea> <td valign="top" rowspan="3">Przepisz kod z obrazka:
</td> $slowa=file('hasla.txt');
$id=rand(0,count($slowa)-1);
echo '<img src="pic.php?id='.$id.'"><td><input type="text" name="token"></td>';?>
</td> <input type="hidden" name="los" value="<? echo $id; ?>"/>
<tr><td colspan="2"><input type="submit" value="Wyślij"></td>
<? switch($_GET['mail'])
{
case 'ok';
$id=$_POST['los'];
$odp=$_POST['token'];
$slowa=file('hasla.txt');
if(isset($_POST['odkogo']) && $_POST['odkogo']=='') $blad.='- Nie podałeś imienia!<br />';
if(isset($_POST['mail']) && $_POST['mail']=='') $blad.='- Nie podałeś swojego e-maila!<br />';
if(isset($_POST['mail']) && $_POST['mail']!='' && !ereg("^.+@.+..+$", $_POST['mail'])) $blad.='- Podałeś niepoprawny adres e-mail!<br />';
if(isset($_POST['mailtoperson']) && $_POST['mailtoperson']=='') $blad.='- Nie wybrałeś adresata!<br />';
if(isset($_POST['temat']) && $_POST['temat']=='') $blad.='- Nie podałeś tematu e-maila!<br />';
if(isset($_POST['tresc']) && $_POST['tresc']=='') $blad.='- Nie podałeś treści e-maila!<br />';
if(trim($slowa[$id])!=$odp && isset($_POST['tresc'])) $blad.='- Źle przepisany kod!<br />';
if(!isset($blad))
{
if(mail($_POST['mailtoperson'],$_POST['temat'],$_POST['tresc'],'From: '.$_POST['odkogo'].' <'.$_POST['mail'].'>'));
?>
E-mail został wysłany! Dziękujemy
<?
break;
}
if(isset($blad))
{
echo '<b>Napotkano następujące błędy:
</b><br /><br />';
}
default:
}
?>
Taraz mam pytania dotyczące tego kodu. Co powinienem wpisać aby wynik z błędami (jak widać w kodzie) wyświetlał się poniżej tego formularza na tej samej stronie co formularz. Niby to teraz działa bo plik z tym formularzem kontakt.php jest wywoływany w linii <form action="kontakt?mail=ok" method="POST" > ale jeżeli stronę z tym formularzem wykorzystuję w serwisie gdzie strona index.php zawiera kod:
<?php
$add_site = true;
?>
<body>
<div id="wrapper">
<div class="top"><?php include "naglowek.php"; ?></div>
<div class="left"><?php include "menu_lewe.php"; ?></div>
<div class="main"><?php
$go = $_GET['go'];
{
if(is_file("$go.php")) include "$go.php"; else echo "<br />Nie ma takiej strony"; }
else include "kontakt.php";?></div>
<div class="bottom"><?php include "stopka.php"; ?></div>
</div>
</body>
to wynik z błędami że coś tam źle zostało wpisane w formularzu albo że email został wysłany wyświetlany jest na nowej stronie i nie wygląda to dobrze.
Czy ktoś mi pomoże?
Ten post edytował runner 14.12.2008, 20:06:50