Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> problem z php+xhtml
tortusz
post
Post #1





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.05.2006

Ostrzeżenie: (0%)
-----


Witam
Ja z php nie teges, a mam taki skrypt do wysyłania formularza:

Kod
<div>
<?php
if ((!$tytul) or (!$kto) && (!$mail) && (!$tresc))  {
    echo "<p>Wypeł‚nij wszystkie pola. Dzięki :-)</p>";
    echo "<p></p>";
    echo "<a href='wiadomosci.php' onclick='self.history.back();'><p>Wstecz</p></a>";
    exit;
    }
$message="tytuł: $tytul\n\n"."kto: $kto\n\n"."mail: $mail\n\n"."treść: $tresc\n\n";
    mail("biuro@generacja-t.org","Wiadomość od twardziela","$message","From:$kto $mail\r\nReply-to:$mail");
    echo "<h2>Dzięki :-) Formularz wysłany z adresu: $mail</h2>";
    echo "<p></p>";
    echo $text;
?>
</div>
<p>Przy exit; tego tekstu nie widać</p>


I wszystko ok. Niestety wyjście z warunku przez exit; sprawia o dziwo zatrzymanie wyświetlania paragrafu pod spodem. Nie wiem jak to możliwe, ale tak jest :(

Dowód: źle
Dla porównania: dobrze

Dzięki za pomoc
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 7)
dr_bonzo
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


1. oddziel warstwe biznsowa od prezentacji: wyslylaj maila przed wyswietlaniem htmla i na podstawie tego czy sie udalo czy nie wyswietl stosowny komunikat
2.
Cytat
Niestety wyjście z warunku przez exit;...
exit() konczy dzialanie SKRYPTU nie warunku!!!
Wiec nic dziwnego ze nic wiecej sie nie wyswietla.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
tortusz
post
Post #3





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.05.2006

Ostrzeżenie: (0%)
-----


ok, dzięki za wyjaśnienie. Dlaczego zatem wtrąca się do html-a? Widziałeś różnicę w 2 linkach? Kopie mi resztę divów. Kiedy wpowadzi się w formularzu wszystkie dane, to wyświetla ok. Możesz pomóc co zmienić
Dzieki smile.gif
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #4





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Ach: blad wyswietlasz gdy nie podano danych w formyularzu, a nie gdy mail sie nie wyslal -- moja pomylka. Ale to nie zmienia przyczyny bledu

exit przerywa wyswietlanie dalszego htmla!
Po prostu go usun.

  1. <?php
  2. if ( (!$tytul) .... i reszta )
  3. {
  4.  // uzupelnij pola...
  5. }
  6. else
  7. {
  8. // tutaj wysyloaj maila
  9. }
  10. ?>


i exit niepotrzebny.

Powinienes sprawdzac tez czy mail zostal wyslany


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
tortusz
post
Post #5





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.05.2006

Ostrzeżenie: (0%)
-----


Niestety nie działa jak trzeba. Wyrzucenie exit() pomogło na layout ale skrypt nie wykonuje się jak należy.
Czy wypełnię wszystkie czy nie to przyjmuje wysyłkę sad.gif W przypadku pustego pola powinien ostrzec. Błądzę w mgle...
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #6





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Zly warunek:

if ((!$tytul) or (!$kto) && (!$mail) && (!$tresc))

wszedzie powinien byc OR (||) czyli: gdy ktorekolwiek z pol jest puste to.

Cytat
Czy wypełnię wszystkie czy nie to przyjmuje

Teraz jest: gdy nie wypelnisz tytulu I ktoregos z pozostalych pol formularz jest akceptowany.


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post
tortusz
post
Post #7





Grupa: Zarejestrowani
Postów: 7
Pomógł: 0
Dołączył: 25.05.2006

Ostrzeżenie: (0%)
-----


Dzięki, działa smile.gif Jestem twoim dłużnikiem biggrin.gif
Go to the top of the page
+Quote Post
dr_bonzo
post
Post #8





Grupa: Przyjaciele php.pl
Postów: 5 724
Pomógł: 259
Dołączył: 13.04.2004
Skąd: N/A

Ostrzeżenie: (0%)
-----


Zaraz ci wysle numer konta tongue.gif biggrin.gif


--------------------
Nie lubię jednorożców.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 20:20