limbo
siječanj 2012 09:42 20
1
Pozdrav, imam problem sa PHP formom koju radim. Imam sljedeći padajući izbornik:
';
<?php
foreach ($result as $r)
{
echo '' . $r['IME_ZAP'] . ' '. $r['PREZIME_ZAP'] . '';
}
?>
On normalno radi kad odabirem iz njega “zaposlenike” koji su spremljeni u bazu, ali nakon uspješnog slanja maila nastaju problemi. Nakon što uspješno pošaljem mail stvori se sljedeći padajući izbornik:
';
1 11 1N NN NM MM M9 99 9n nn nZ ZZ Z1 11 11 1n nn nk kk k1 11 1
Dal netko zna što to točno uzrokuje i kako riješiti?
hepek
siječanj 2012 16:56 20
2
Postavi dio koda koji je zasluzan za slanje maila, odnosno bilo bi dobro da postavis komplet kod.
Provjeri sta se dodjeljuje varijabli $r nakon slanja maila.
limbo
siječanj 2012 19:05 21
3
Ovo je php kod koji se nalazi prije same forme:
<?php
require_once("klase.php");
try {
// Svi zaposlenici
$db = DB::getInstance();
$sql = "SELECT * FROM `zaposlenik` z
LEFT JOIN odjel AS o ON z.ID_ODJ = o.ID_ODJ";
$sth = $db->prepare($sql);
$sth->execute();
$result = $sth->fetchAll();
} catch (Exception $e) {
echo 'Nemoguće dobiti popis zaposlenika:' . $e->getMessage();
}
//Ako je forma potvrđena(submit)
if(isset($_POST['submit'])) {
//Provjera da polje nije prazno
if(trim($_POST['contactname']) == '') {
$hasError = true;
} else {
$name = trim($_POST['contactname']);
}
//Provjera da polje nije prazno
if(trim($_POST['odjel']) == '') {
$hasError = true;
} else {
$zaposlenik = trim($_POST['odjel']);
}
//Provjera da polje nije prazno i stvori listu svrha upita
if(trim($_POST['svrha']) == '') {
$hasError = true;
} else {
foreach($_POST['svrha'] as $value) {
$subject .= "\n - $value";
}
}
//Provjera da polje nije prazno i da je unjet validni email
if(trim($_POST['email']) == '') {
$hasError = true;
} else if (!eregi("^[A-Z0-9._%-]+@[A-Z0-9._%-]+\.[A-Z]{2,4}$", trim($_POST['email']))) {
$hasError = true;
} else {
$email = trim($_POST['email']);
}
//Provjera da polje nije prazno
if(trim($_POST['message']) == '') {
$hasError = true;
} else {
if(function_exists('stripslashes')) {
$comments = stripslashes(trim($_POST['message']));
} else {
$comments = trim($_POST['message']);
}
}
//Ako nema grešaka slanje emaila
if(!isset($hasError)) {
$sql = "SELECT * FROM `zaposlenik` z
LEFT JOIN odjel AS o ON z.ID_ODJ = o.ID_ODJ
WHERE o.ID_ODJ = ?";
$sth = $db->prepare( $sql );
$sth->execute(array($_POST['odjel']));
$result = $sth->fetch();
$mail = new Mail();
$mail->setSender($_POST['email']);
$mail->setReceiver($result['MAIL_ODJ']);
$mail->setSubject($result['IME_ZAP'] . ' ' . $result['PREZIME_ZAP']);
$employee=$result['IME_ZAP'] . ' ' . $result['PREZIME_ZAP'];
$body ="Primatelj poruke: $employee \n\nPošiljatelj poruke: $name \n\nSvrha slanja: $subject \n\nPoruka: $comments \n\nEmail pošiljatelja: $email";
$mail->setBody($body);
$emailSent = $mail->sendMail();
}
}
?>