[ wex-alpha @ 28.09.2005. 09:07 ] @
Krajnje jednostavno pitanje za neke, ali mene smori... nisam dotakao php, html mjesecima, pa sad i ova jednostavna modifikacija me izludi...

Naime,

Na stranici imam formu sa jednim input poljem u koje korisnik unese svoju e-mail adresu. Ispod se nalazi submit (Posalji) dugme.

Code:

 <input name=email type=text maxlength="25" lenght=20>
<input name="submit" type=submit value=Pošalji>
</form>




Nakon pritiskanja submit dugmeta poziva se

Code:


<?
function checkemail($email) {
  if (ereg("[[:alnum:]]+@[[:alnum:]]+\.[[:alnum:]]+", $email)) {
    return true;
  } else {
    return false;
  }
}
?>


i onda ako je format adrese ispravan desava se sljedece:

Code:

 
$adresa = $_POST['email'];
$dest="[email protected]";
$php_header = "Mailing lista <$adresa>\n";
$message_tosent="Email: $adresa";
$confirm_header = "Od: $dest";
$confirm_message = "Hvala Vam što se se prijavili na našu mailing
listu. Ako želite da izbrišete vašu adresu, pošaljite prazan mail na \n$dest, koji u polju SUBJECT sadrži riječ ODJAVA";
$confirm_subject = "Registracija za xxx";
$subject = "Prijava za Mailing listu, prijavio se: $adresa";
$proslo = "xxx.php"; 
  mail($dest,$subject,$message_tosent,$php_header) &&
mail($adresa,$confirm_subject,$confirm_message,$confirm_header);
echo "$adresa je registrovana";



Meni treba jos jedno dugme odmah pored submit dugmeta koje bi samo poslalo poruku u kojoj se korisniku salje druga poruka kako da se ispise.

Probao sam da dodam to dugme, ali me muci kako da u istoj formi koristim drugu skriptu. Znaci da to dugme ODJAVI poziva drugu skriptu, koja isto salje mail, ali samo sa drugim tekstom.

Nadam se da nisam bio konfuzan.

Hvala naljepsa.
[ Nemanja Avramović @ 28.09.2005. 15:44 ] @
<input type="submit" name="Submit" value="Prijavi"> <input type="submit" name="Submit" value="Odjavi">

a u skripti:
Code:

$akcija = $_POST['Submit'];
if ($akcija == "Prijavi") {
//kod za prijavljivanje
}
else {
//kod za odjavljivanje
}


Cela logika je da procitas naslov tastera na koji je kliknuo korisnik...
Srecno!

p.s. Naslov teme ti je losh, ovo nema veze sa slanjem maila :P

[Ovu poruku je menjao JaHvram dana 28.09.2005. u 16:47 GMT+1]
[ wex-alpha @ 29.09.2005. 06:48 ] @
Odoh odmah da probam. Hvala mnogo :)

Stvarno sam fulio naslov teme :)
[ wex-alpha @ 29.09.2005. 07:37 ] @
Probao sam sto si mi predlozio, ali sad me zeza stari znanac.



Kod sljedi:
Code:

<form action=xxxxx.php?act=check method=post>
Unesite vašu E-mail adresu:
<input name=email type=text maxlength="25" lenght=20>
<input name="submit" type=submit value=Prijavi>
<input name="submit" type=submit value=Odjavi>
</form>


$adresa = $_POST['Submit'];
if ($adresa == "Prijavi") {
include_once("./checkemail.php");
if (checkemail($_POST['email'])){ 

$dest="[email protected]";
$php_header = "Mailing lista <$adresa>\n";
$message_tosent="Email: $adresa";
$confirm_header = "Od: $dest";
$confirm_message = "Hvala Vam što se se prijavili na našu mailing
listu.";
$confirm_subject = "Registracija xxx";
$subject = "-Prijava, prijavio se: $adresa";
$proslo = "XXX.php"; 
$confirm_Odjava="Odjava sa mail liste xxx";
$confirm_tijelo="Da bi ste se odjavili sa newsletter liste xxx, molimo posaljite prazan";
  mail($dest,$subject,$message_tosent,$php_header) &&
mail($adresa,$confirm_subject,$confirm_message,$confirm_header);
echo "$adresa je registrovana";

 }
 else
 {
  echo "$dest unesena adresa nije ispravna";
 }
}
else {
mail($adresa,$confirm_Odjava, $confirm_tijelo,$confirm_header);
}
?>



Stalno mi javlja gresku u drugoj mail funkciji a greska je:

Citat:

Warning: mail() [function.mail]: "sendmail_from" not set in php.ini or custom "From:" header missing in C:\Program Files\Apache Group\Apache2\htdocs\newdesign3\bos\bosmain.php on line 291



Ta linija 291 je bas ta druga mail funkcija koju sam dodao. Cim tu funkciju iskljucimo onda sve radi kako treba... :(

Onda sam gledao na: http://www.php.net/manual/en/function.header.php

Ali nije mi bas jasno.

Ako ti nije tesko da mi opet pogledas taj prokleti kodich.

Hvala.



[Ovu poruku je menjao wex-alpha dana 29.09.2005. u 08:38 GMT+1]
[ duke @ 29.09.2005. 08:29 ] @
Zeza te ovo:
Code:

$confirm_header = "Od: $dest";
$php_header = "Mailing lista <$adresa>\n";


Probaj sa:
Code:

$confirm_header = "From: $dest";
$php_header = "From: Mailing lista <$adresa>\n";



[Ovu poruku je menjao duke dana 29.09.2005. u 09:34 GMT+1]
[ wex-alpha @ 29.09.2005. 08:49 ] @
Evo upravo sam to probao, ali ista stvar.

Cak sam napravio dva php fajla. Odjava.php i prijava.php, pa i onda inkludo... ali sta god uradim opet ista stvar... :(
[ duke @ 29.09.2005. 09:17 ] @
Probaj da prebacis
Code:

$dest="[email protected]";
$confirm_header = "Od: $dest";

iznad prvog if. Recimo:
Code:

$adresa = $_POST['Submit'];
$dest="[email protected]";
$confirm_header = "Od: $dest";
if ($adresa == "Prijavi") {
[ wex-alpha @ 29.09.2005. 10:03 ] @
:') Ista stvar... sta li je u pitanju?!?


[ duke @ 29.09.2005. 10:54 ] @
Nisam siguran da sam tacno razumeo u kojoj liniji ti puca skripta, u svakom slucaju probaj na tom mestu da kao cetvrti parametar umesto promenljive predas string "From: [email protected]", tj.
Code:

mail($to, $subj, $msg, "From: [email protected]");


Ako to prodje, onda definitivno nesto nije u redu sa promenljivom koju predajes. Ako ne prodje, onda nije u redu konfiguracija php-a.
[ duke @ 29.09.2005. 10:58 ] @
Citat:


Onda sam gledao na: http://www.php.net/manual/en/function.header.php

Ali nije mi bas jasno.



A ovo ti nije bilo jasno jer funkcija header() nema nikakve veze sa slanjem maila.