Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Błąd Parse error: syntax error
Forum PHP.pl > Forum > Przedszkole
Hemik
Witam,

Czy może mi ktoś pomóc z błędem

Parse error: syntax error, unexpected 'function' (T_FUNCTION) in C:\xampp\htdocs\test\sprawdz.php on line 3

To mój kodzik:

CODE
<?php
error_reporting(E_ALL ^ E_NOTICE)
function sprawdz_email($email)
{
$sprawdz='/^[a-zA-Z0-9.\-]+@[a-zA-Z0-9\-.]+\.[a-zA-Z]{2,4}$/';
if(preg_match($sprawdz,$email))
return true;

else
return false;

}
function sprawdz_imie($imie)
{
$sprawdz='/^[a-zA-ZŁŚĆŹŻĄĘOŃąęółśżźćń]+$/';
if(preg_match($sprawdz,$imie))
{
$imie=ucwords(strtolower($imie));
return$imie;
}
else
return false;
}
function sprawdz_telefon($telefon)
{
$sprawdz='/^[0-9]{9}+$/';
if(preg_match($sprawdz,$telefon))
return true;
else
return false;

}
function sprawdz_tresc($tresc)
{
$tresc=trim($tresc);
if(strlen($tresc)<30)
return$tresc;
}

$email=$_POST['email'];
$imie=$_POST['imie'];
$tel=$_POST['telefon'];
$tresc=$_POST['tresc'];
$blad_danych=false;

if(!sprawdz_email($email))
{
echo"Adres e-mail nieprwidłowy ";
$blad_danych=true;
}
if(!sprawdz_telefon($tel))
{
echo" Błędny format telefonu. ";
$blad_danych=true;
}
$tresc=sprawdz_tresc($tresc);
if(!$tresc)
{
echo" Niepoprawna treść ";
$blad_danych=true;
}
if($blad_danych)
{
echo" Wystąpił jeden lub więcej błędów podczas ";
echo" przetwarzania danych. ";
}

else

{
echo"Imię klienta:$imie;";
echo"Adres e-mail:$email;";
echo"Numer telefonu:$tel;";
echo"Treść:$tresc;";
}

?>
Pyton_000
brakuje ; w 2 linijce....
Hemik
Chodzi ci o wyłączenie błędów ? Ale to wiem tylko chciał bym wiedzieć jak to zrobić elegancko. Czy to nie jest wina tego że mam PHP 5.6.0 i inaczej się to zapisuje ? Sam ; nic nie zmienia sad.gif

Zrobiłem exclamation.gif! Banałexclamation.gif
com
sciana.gif jak Pyton_000 napisał ze brak ; to, znaczyło że go brakuje, a notice się eliminuje nie ukrywa wink.gif
Hemik
Spoko to już ";" jest ok tylko że mam ukryte to Notice bo nie wiem jak to rozwiązać. Mam wersję PHP 5.6 i już kilka razy musiałem szukać nowych składników kodu do tej wersji.
Pyton_000
Skoro masz Notice to trzeba je pokazywać i rozwiązywać.

Z reguły wystarczy:

  1. if(!isset($zmienna)) {
  2. $zmienna = null;
  3. }

Lub podobne.
Hemik
Widziałem ten sposób. To jest jakieś obejście czy nowa składnia w PHP 5.6.12 ? I czy analogicznie można postąpić z funkcjami oraz $_POST; $_GET?
Pyton_000
To ja chyba jednak poleciłbym wrócenie do podstaw.

Nie możesz sam tego sprawdzić?
nospor
Cytat
To jest jakieś obejście
To nie jest zadne obejscie. Tak sie wlasnie poprawnie pisze.
Wylaczanie wyswietlania bledow to jest obejscie i na dodatek zle.
viking
A w nowszej wersji nawet tak https://wiki.php.net/rfc/isset_ternary
Hemik
No właśnie się uczę PHP na podstawie kursu online. Ale on jest chyba w starej wersji PHP napisany a ja mam na serwerze PHP 5.6.12. I dlatego pytam jak powinien wyglądać zapis dla :

funcion
$_GET;$_POST
$zmienna
viking
Wyrzuć ten kurs do kosza bo jest do niczego. Po pierwsze walidacja adresu email domena - 2,4. Pierwsze z brzegu: https://www.ovh.pl/domeny/cennik-domen/ - christmas, company, computer. Wszystko zostanie odrzucone.
Masz w zamian to: http://php.net/manual/en/function.filter-var.php
Validator imienia: http://stackoverflow.com/questions/1489112...ssion-pl-and-pn
Hemik
Z tych też korzystam tylko miałem sporą przerwę w nauce i zaczynam od kursów po Polsku. Tak jak myślałem stary ten kurs smile.gif ale zostało mi z 15 lekcji i chce dociągnąć go do końca wink.gif.
com
w tym kursie po prostu źle uczą, bo isset w php istnieje już od wersji 4 i powinno się go używać, podobnie jak empty itp, ale na necie jest masa bzdur, bo piszą to amatorzy z innych jeżyków co im sie wydaje, że php znają, potem na forum trafiają kwiatki takie jak @ przed funkcjami, ukrywane notice, połączenia z mysql za pomocą mysql_* itd wink.gif
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.