»
PHP anasayfasında döngü ile bir ürün listesi hazırlamak ve Detay.php ye link döngüsü
|
![]() |
|
|
LinkBack | Seçenekler |
|
|
#1 (permalink) |
|
Üyelik Tarihi: 16.08.2000
Yer: amerikanya
Mesaj: 59
|
PHP anasayfasında döngü ile bir ürün listesi hazırlamak ve Detay.php ye link döngüsü
Merhabalar programcı ve tasarımcı gençlik; PHP ile biraz kavga ettik iyice tepemi attırdı. müsadenizle probelemimi açıklayayım 1- PHP ve MySQL database kullanarak basit bir e-ticaret sitesi yapıyorum ve en cok işlem gören 6 urunu anasayfada görüntülemek istiyorum. 2- detay.PHP linkinde bir dongu kullanarak hangi resmin altındaki detya.PHP ye basarsan dongude o resme karşılık gelen id numarasından databaseden o urunun tum detaylarını getirsin istiyorum kodlarımı müsadenizle koyayım varın siz varar verin nasıl bir dongu kurmam lazım. Lakin bu işin içinden çıkamadım. -------------index.PHP---------------------------------- PHP Code:
PHP Code:
__________________
Struggle is my life !!!////FREEDOM\\\\!!! |
|
|
|
|
|
#2 (permalink) |
|
Üyelik Tarihi: 07.10.2002
Yer: İstanbul
Yaş: 26
Mesaj: 986
|
Re: PHP anasayfasında döngü ile bir ürün listesi hazırlamak ve Detay.php ye link döng
Merhaba,
Öncelikle konunun "Sunucu Tabanlı Programlama" bölümünde olması gerektiğini düşündüğümü belirtmeliyim. Kodları yazılımsal olarak çok inceleyemedim (yazım hatası varmı, vb...). Ama şunu söyleyeyim, iki dosyanın yaptığı şey hemen hemen aynı değil mi? İki dosyada da belirli bir ürün için sorgulama yapıyorsun (ID sütununa göre). Dolayısıyla çıkan sonuçlar birbirine benzemeli, değil mi? Son olarak, bu adres işini biraz daha kolaylaştırır gibi geldi bana. Kolay gelsin. |
|
|
|
|
|
#3 (permalink) |
|
Üyelik Tarihi: 06.07.2006
Yer: İstanbul
Yaş: 22
Mesaj: 216
|
Re: PHP anasayfasında döngü ile bir ürün listesi hazırlamak ve Detay.php ye link döng
Ilk olarak urunlerin hangisinin en cok izlendigini bulman lazim. Bunun icin de bir cesit sayac uygulamasi gerekiyor. En kisa yolu, birisi detay.PHP'ye girdigi zaman, MySQL tablosunda o urune ait sayac kolonunu artir... Bunu yapmis sayarak ilk dosyayi olustur...
Kod:
<?PHP $connection = mysql_connect('localhost', 'root', '1234'); if (!$connection) die('Baglanti gerçeklestirilemedi: ' . mysql_error()); @mysql_select_db('giyerim'); echo "<table border=1>\n"; $qryURUN ="SELECT id, resim FROM urun ORDER by sayac DESC LIMIT 6"; $rsURUN=mysql_query($qryURUN,$connection); while($row=mysql_fetch_array($rsURUN)){ $id= $row['id']; $resim= $row['resim']; echo "<tr>\n"; echo "<td><img src=\"".$resim."\" width=\"150px\" height=\"150px\">".$resim."<br />"; echo "<a href=\"dty.PHP?urunid=".$id."\">Detay</a></td>\n"; echo "</tr>\n"; } mysql_close($connection); echo "</table>"; ?> Kod:
<?PHP $connection= mysql_connect('localhost', 'root', '1234'); if (!$connection) die('Baglanti Saglanamadi: ' . mysql_error()); //echo 'Baglanti Saglandi'; if (!mysql_select_db('giyerim', $connection)) { echo 'Veritabani bulunamadi'; exit; } $id=$_GET['urunid']; $qryURUN='SELECT * FROM urun WHERE ID=$id'; $rsURUN=mysql_query($qryURUN,$connection); if (!$rsURUN) { echo "Sorgu yapilamadi\n"; echo 'MySQL Hatasi: ' . mysql_error(); exit; } echo "<table border=1>"; echo "<tr><td>Türü</td><td>Markasi</td><td>Modeli</td><td>Bedeni</td><td>Rengi</td><td>Fiyati</td><td>Resmi</td></tr>\n"; while($row=mysql_fetch_array($rsURUN)){ $ID=$row['id']; $TURU=$row['turu']; $MARKASI=$row['markasi']; $MODEL=$row['model']; $BEDEN=$row['beden']; $RENK=$row['renk']; $FIYAT=$row['fiyat']; $RESIM=$row['resim']; $sayac=$row['sayac']; echo "<tr>\n"; echo "<td >".$TURU."</td>". "<td>".$MARKASI."</td>". "<td>".$MODEL."</td>". "<td>".$BEDEN."</td>". "<td>".$RENK."</td>". "<td>".$FIYAT."</td>". "<td><img src=\"".$RESIM."\" width=\"150px\" height=\"150px\"></td>\n"; echo "</tr>\n"; } echo "</table>"; mysql_free_result($rsURUN); $query=sprintf("UPDATE giyerim SET sayac=%d WHERE id='%s'", $sayac+1, $ID); $result = mysql_query($query) or die(mysql_error()); mysql_close($connection); ?> |
|
|
|
|
|
#4 (permalink) |
|
Üyelik Tarihi: 16.08.2000
Yer: amerikanya
Mesaj: 59
|
Re: PHP anasayfasında döngü ile bir ürün listesi hazırlamak ve Detay.php ye link döng
teşekkürler hayalet verdiğin linkte bir çok fetch_assoc ve döngü uygulamaları vardı hepsini bir arada görmemiştim deneyerek bir tane işime yarar hale getirdim ve şu an çalışıyor
bgul senin tavsiyenide yabana atmadım ama farklı yaptım biraz sayaç yerine urunkodu gibi bir şey oluştuırdum ki ilerde bu urunkodu stok numarası olarakda kullanilabilsin diye ve bunu da dongu haline getirdim kodun son halini gönderiyorumki forumda bir katkı olarak bulunsun. ayrıca anasayfada sadece fırsat urunleri görüntulensin diye fırsat diye bir field oluşturdum ve buna 1 ve 0 değerleri verdim dolayısı ile anasayfada goruntulenecek urunu belirleyebilme yetkim var artık. Detay a tıklandıgında MySQL den ilgili döngü ile aynı numarayı tasıyan urunun detay bilgileride ekrana gelmiş olacak bu sadece motor aşamasıydı grafik görsel tasarım aşamasına geçebilirim artık -----index.PHP---------------------- PHP Code:
-----dty.PHP------- PHP Code:
__________________
Struggle is my life !!!////FREEDOM\\\\!!! |
|
|
|
|
|
#5 (permalink) |
|
Üyelik Tarihi: 06.07.2006
Yer: İstanbul
Yaş: 22
Mesaj: 216
|
Re: PHP anasayfasında döngü ile bir ürün listesi hazırlamak ve Detay.php ye link döng
Hesaba katmadigin bir kac nokta var yalniz.
1. Ilk dosyada, eger her hangi bir urunu silersen daha sonra, id sirasi degisecektir. su an detay icin link'leri verirken for loop'taki $i degerine gore veriyorsun. Bunu daha sistematik yapmak icin hazir bilgileri SQL sorgusuyla almisken, ordaki id'leri kullan. 2. Yine index'te, SQL sorgusunda butun field bilgilerini aliyorsun; ancak sadece resim bolumunu kullaniyorsun. (belki bir de id'yi kullanacaksin..) "SELECT *" yerine "SELECT id, resim" kullanmani oneririm, boylece gereksiz yerleri almamis olursun. 3. SQL sorgusuyla aldigin bilgileri dogrudan kullanmak yerine bi array'e kaydedersen, daha sonra ayni dosya icinde kullanman gerektiginde dogrudan array'e basvurursun. Yoksa tekrar tekrar sorguyu yollaman gerekir. NOT: benim tavsiyelerim daha cok optimization ile ilgili. Bu aralar ona kafayi takmis durumdayim. Yapmazsan da calisir tabi; ama 0.005 degil de 0.015 surer. Tabi urun sayisi arttikca etkisi artar optimization'in. |
|
|
|
|
|
#6 (permalink) |
|
Üyelik Tarihi: 16.08.2000
Yer: amerikanya
Mesaj: 59
|
Re: PHP anasayfasında döngü ile bir ürün listesi hazırlamak ve Detay.php ye link döng
çok teşekkürler bgul .
Profesyonel yaklaşımın ve yardımların için sağol. Çok önemli noktalara değinmişsin. Traşlama dediğim tasarım kısmında optimizasyona da önem veriyorum tabi. Dediklerini uygularım. Başta yapılan herşey sadece çalışması içindi. Ama ID de dediğin gibi bir problem olacak ilerde, şimdi onu düşünüyorum. Otomatik ID yerine ne atasam acaba. Hazır yapılmış sitelerin PHP kodlarına nasıl ulaşırım ki? benim yapmaya çalıştığım gibi basit bir e-ticaret sitesi taslağı varsa oldugu gibi alıp kullanmak değil ama belki bazı kodlarından faydalanmak isterim.
__________________
Struggle is my life !!!////FREEDOM\\\\!!! |
|
|
|
|
|
#7 (permalink) |
|
Üyelik Tarihi: 06.07.2006
Yer: İstanbul
Yaş: 22
Mesaj: 216
|
Re: PHP anasayfasında döngü ile bir ürün listesi hazırlamak ve Detay.php ye link döng
Asagidaki gibi kullanirsan ID'leri de tablodan almis olursun.
Kod:
$numURUN=mysql_numrows($rsURUN);
echo "<table border=1>\n";
$fields_num = mysql_num_fields($rsURUN);
for($i=0; $i<$numURUN; $i++)
{
$field = mysql_fetch_field($rsURUN);
$ID=mysql_result($rsURUN,$i,"ID") ;
echo "<td><a href='dty.PHP?urunid=$ID'>DETAY</a></td>";
$RESIM=mysql_result($rsURUN,$i,"RESIM") ;
echo "<td><img src='$RESIM' width='150px'height='150px'></td>\n";
}
|
|
|
|
| Sponsorlu Bağlantılar | |
|
Zoque.Forum
Reklam
|
|
![]() |
| Etiketler |
|
php , anasayfasinda , dongu , urun , listesi , hazirlamak , detayphp , link , dongusu |
|
|
Zoque'a hoşgeldiniz!