Bu Hata Çeşidi Bu aralar Çok sık Karşımıza Çıkmaya Başladı.
En çok görülen parse hatalarına örnek verecek olursak;
1. Parse error: syntax error, unexpected $end in … .php on line …
2. Parse error: syntax error, unexpected T_IF/T_WHILE/T_FOR, expecting ‘{‘ in … .php
3. Parse error: unexpected T_IF, expecting ‘,’ or ‘;’ in … .php on line …
4. Parse error: unexpected T_STRING, expecting’,’ or ‘;’ in … .php on line …
Bu hataları örnekleyerek açıklayacak olursak:
1. Parse error: syntax error, unexpected $end in
Hata sebebi:Kullanılan 1. if sorgusu ‘}’ ile kapatılmamış. Böyle bir durum oluştuğunda yorumlayıcı size sayfanın son satırını verecektir.
Kod:
if (5 > 4) {
echo 'IF ';
if (1< 0) {
echo 'Inner IF';
}
2. Parse error: syntax error, unexpected T_IF/T_WHILE/T_FOR, expecting ‘{‘ in
Hata sebebi:Fonksiyon açma ayracı bulunamadı. Bu yüzden hatayı if e yükleyecektir. Hata raporları: T_IF for if, T_WHILE for while, T_FOR for.
Fonksiyonu açarken ayracı fonksiyon isminden sonra koymalısınız. Bu yüzden yorumlayıcı ilk açma ayracını arayacak ve hatayı if e rapor edecektir.
Kod:
function test ()
if (1>2) {
echo ' IF ';
}
for ($i=0; $i<=5; $i++) {
echo "For $i";
}
}
3. Parse error: parse error, unexpected T_IF, expecting ',' or ';' in … .php on line …
Hata sebebi:İlk “echo” dan sonra konulmayan ‘;’. Bu yüzden yorumlayıcı hatayı ikinci if e yükleyecektir. İlk “echo” nun devam etmesini bekliyor ama devam etmiyor. Bunun yerine hatayı if ifadesine yüklüyor.
Kod:
if (5 > 4) {
echo 'testing error '
if (1< 0) {
echo 'Inner IF';
}
}
Satır sonlarında ‘;’ yerine ‘,’ kullanırsanız da aynı hata ile karşılaşırsınız. Hata şöyle karşınıza çıkacaktır: parse error, unexpected T_IF in …
Kod:
if (5 > 4) {
echo 'parse error answer ',
if (1< 0) {
echo 'Inner IF';
}
}
4. Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in … .php on line …
Hata sebebi: İlk “echo” “ ’ ” eksik olduğu için kapatılmadı. (‘) ile açtığınızda (“) ile veya (“) ile açtığınızda (‘) ile kapatırsanız da aynı hata ile karşılaşırsınız.
Kod:
if (5 > 4) {
echo 'error due to missing quote ;
if (1< 0) {
echo 'Inner IF';
}
}
Kayıt: Oct 21, 2003 Mesajlar: 126 Konum: North Cyprus
Tarih: 2009-08-05, 19:53:24 Mesaj konusu:
arkadaşlar sağlam olan sitede durduk yerde
Parse error: syntax error, unexpected T_STRING, expecting ',' or ';' in
hatası alıyorum. bu sorunu hata veren dosyayı tekrar yükleyerek hallediyorum fakat aradan biraz zaman geçtikten sonra tekrar alıyorum. ve örnek en son anket modulünde hata aldım modules/Surveys/index.php on line 202
Parse error: parse error, unexpected T_STRING, expecting ',' or ';' in C:\Inetpub\vhosts\domainadı.com\httpdocs\index.php on line 82
böyle bir hata alıyorum çözümü nedir bunun yukarıdaki anlatılanlardan bi çözüm üretemedim
ayrışma (,) veya noktalı ayrışma (;) tanımlanmadığı için ilgili dosyanın (C:\Inetpub\vhosts\domainadı.com\httpdocs\index.php)82. satırındaki hatayı size rapor etmiş bu durumda ilgili satırı bulup bahsettiği düzeltmeleri yapmanızı sizden istemektedir PHP...
kullandığınız editöre göre bu satır 81 de olabilir 83 de siz her 3 satır yani 81 82 83 satırlarında bu hataları bulup düzeltin...
Arkadaşlar önce php nuke 7.7 kurdum sitem normal çalışıyordu herihtimale karşı tüm yedeklerimi alıyordum 15 gün sonra birden çöktü aşağıdaki hatayı verdi hata=(Parse error: syntax error, unexpected T_STRING in /usr/hosts2/domains/siteadı331/www.siteadı.org.tr/httpdocs/mainfile.php on line 1305) ben daha önce yedeklediğim ftp dosyalarımı tekrar yüklediğimde site çalışıyor ama çok geçmeden yine benzer hata veriyor ftp sürümünden kaynaklanıyordur dedim nuke7.8 kurdum ama busabah baktım yine aynı hata bende profösyönel YARDIM almak istedim sanırım birisi sitemi sürekli hackliyor bu konuda YARDIM teşekkürelr şuanda php nuke 7.8 kurulu...
Kayıt: Jun 02, 2003 Mesajlar: 1842 Konum: Istanbul
Tarih: 2009-08-21, 23:11:51 Mesaj konusu:
Yukarıda ugurekinci'nin bahsettiği gibi virüs ile karşı karşıyasınız.
İlgili virüs kodunuza ekleniyor ama kodlama hatası olduğu için de parse error hataları oluşturuyor.
Sağlam kodu siteye attığınızda çalışması ve bir süre sonra bozulması o virüsün bulaşması için geçen süreyi işaret ediyor.
Site ana sayfasındayken sitenin kaynak kodunu görüntüleyin ve .ru
ve .cn kodlarını arattırın.
Genelde rus ve çin sitelerine yönelendirme yapıyor bu tür virüsler.
Çözüm ise daha önce değişik başlıklarda verildi.
Bu forumda yeni başlıklar açamazsınız Bu forumdaki başlıklara cevap veremezsiniz Bu forumdaki mesajlarınızı değiştiremezsiniz Bu forumdaki mesajlarınızı silemezsiniz Bu forumdaki anketlerde oy kullanamazsınız