PHP ' Ufacık Bir Sorun.?
-
s.a arkadaşlar
bu kod'da devamını oku[...] linkine tıkladığında index.php sayfasında ilgili makalenin id disinden gelen değer tekrar index.php sayfasında yazdıralcak sorun şudurki index.php sayfası geliyor ama makale yok
<?php
@$get_id=$_GET['id'];
if(isset($get_id)){
$sql="select * from articles where id='$get_id' ";
$hit_sql=mysql_query("update articles set hit=hit+1 where id='$get_id'");
}
else{
$sql="select * from articles order by id desc limit 0,7";
$query=mysql_query($sql);
while ($getir=mysql_fetch_assoc($query)){
$id=$getir['id'];
$title=$getir['title'];
if(isset($get_id)){
}else{
$articles=$getir['articles'];
}
$articles=substr($getir['articles'],0,280);
$tarih=$getir['date'];
$hit=$getir['hit'];
echo "<h2><a href='index.php?id=$id'>$title</a></h2>";
echo " <p> $articles </p>";
echo "<div align='right'>okunma: ". $hit ." Tarih: ".$tarih ." Devamı <a href='index.php?id=$id'> [...]</a></div>";
}
}
?>
</div> -
hocam şahsi fikrim fazla @ kullanmamaktan yana.Ayrica id çektiğin için int falan olmasına dikkat et.
http://www.php.net/manual/en/security.database.sql-injection.php
ayrıca ;
if(isset($get_id)){
}else{
$articles=$getir['articles'];
}kısmında else dediği empty yani boşsa.Şöyle yapabilirsin
if(empty($get_id))
$articles = $ getir['articles'];
----
kafam dalgın yanlış yapabilirim ama bence sorun index.php'de olabilir.
-
php bilmem ama
if(isset($get_id)){
}burada id varsa ne yapacağını yazmamışsın o yüzden gelmiyor olabilir mi ? else kısmında tüm makaleleri basmışsında...
-
if(!isset($get_id))
issetin başına ! koy hocam.
senin koda göre id varsa bi bok yapmıyor.
id yoksa makaleyi yaz demişin.
-
abi index.php sayfası lazım.Bir zahmet kodları
http://www.sudrap.org/paste/text/
buraya alalım.Ayrıca intval() kullanmak güzeldir.
Ekstra haber : blogu sağlamlaştırmaya başladım.Adam edip yayınlayacağım.
-
<div id="content">
<?php
@$get_id=$_GET['id'];
if(!isset($get_id)){
$sql="select * from articles where id='$get_id' ";
$hit_sql=mysql_query("update articles set hit=hit+1 where id='$get_id'");
}
else{
$sql="select * from articles order by id desc limit 0,7";
$query=mysql_query($sql);
while ($getir=mysql_fetch_assoc($query)){
$id=$getir['id'];
$title=$getir['title'];
if(isset($get_id)){
$articles=substr($getir['articles'],0,280);
}else{
$articles=$getir['articles'];
}
$tarih=$getir['date'];
$hit=$getir['hit'];
echo "<h2><a href='index.php?id=$id'>$title</a></h2>";
echo " <p> $articles </p>";
echo "<div align='right'>okunma: ". $hit ." Tarih: ".$tarih ." Devamı <a href='index.php?id=$id'> [...]</a></div>";
}
}
?> -
hocam hatayı göremedin mi ?
makaleleri bastığın if'e bak.ID var mı yok mu diye bakıyorsun, varsa hiç bir şey yapmıyorsun,yoksa tüm makaleleri basıyorsun. hata burada değil mi ?
if(isset($get_id)){
hiç bir şey yapmıyorsun ?
}else
{
tum makaleleri basıyorsun
}
-
hocam okunma : hitsayısı falan görünüyor mu ? durum neidr ??
birde şu if(isset kısmını if(!isset( olarak değiştiririp yazarsan daha iyi olur.
-
SharpShooter bunu yazdı:
-----------------------------
hocam hatayı göremedin mi ?
makaleleri bastığın if'e bak.ID var mı yok mu diye bakıyorsun, varsa hiç bir şey yapmıyorsun,yoksa tüm makaleleri basıyorsun. hata burada değil mi ?
if(isset($get_id)){
hiç bir şey yapmıyorsun ?
}else
{
tum makaleleri basıyorsun
}
-----------------------------hocam dediğini yaptım görmemişim sonuc aynı bu sever devamı oku linkine tıkladığım halde sayfaya gitmiyor
fakat $articles=substr($getir['articles'],0,280); kodu ile $articles=$getir['articles']; değiştiğimde sayfa geliyor ama dediğim gibi makale gelmiyor
-
up
-
gördüğüm kadarıyla if scope'ların hatalı hocam, iyice bir dikkat et.
not:php bilmiyorum ama if yapısında ki parantezlerin kesinlikle yanlış :D
