Cevaplar
-
İlk verdiğin blokta $_FILES['resim']['name'][$i] şeklinde kullanmışsın. POST'tan gelen dosyalar resim[] olduğuna göre $_FILES['resim'][$i]['name'] olması gerekmez mi?
-
GncArt
Bu kullanımda bi hata yok
$_FILES['files']['name']
kalıptır. Sonradan atanacak değişken sonuna [] içinde yazılır.12 yıl önce yazılmış -
evr
dosya doğru çalışıyor. Orada count ile sayması için...
Foreach yaptığımızda $_FILES['resim']['name'] bunu okuyor zaten valuede ordada sorun yok... Hepsine dump yaptım. Ama nedense bu şekilde bir sorun mevcut12 yıl önce yazılmış
-
-
Birde LIMIT ekleyerek dener misiniz?
foreach ($_FILES['resim']['name'] as $key=> $value) { $valuee = $radi.$value; sorgu(" UPDATE t_urg_urungorsel SET urn_gorsel = '$valuee', urn_ilksira = '$key', urn_id = '$id', urn_isim = '$isim' WHERE urn_id = '$id' LIMIT 1");
-
GncArt
Ayrıca UPTADE sorgusunu niye döngü içine yazdınız onu anlamadım. Sadece değişkenleri foreach ile alıp sorguyu 1 kez yaptırmalısın.12 yıl önce yazılmış -
evr
ikisini doldurunca değiştiriyor ama biri veya hepsi boş olduğunda sadece rand() değeri yazıyor dosya ismini vermiyor.12 yıl önce yazılmış -
evr
GncArt; demek istediğini tam anlamadım. Bir örnek verirsen. LIMIT 1 sorunu biraz çözdü gibi..
ama yukarıda ifade ettiğim sorun devam ediyor hala...12 yıl önce yazılmış -
GncArt
sorgu(); fonksiyonunu foreach döngüsünden bağımsız olarak yapmanı istemiştim. En altta düzelterek yazdım.
$id = $_POST["idgel"]; $isim = $_POST["urunisim"]; if($_FILES['resim']['size'][0] > 0) { baglan(); $sorgu=sorgu("SELECT * from t_urg_urungorsel WHERE urn_id='$id'"); while($yap=mysql_fetch_array($sorgu)) : $gorsell = $yap["urn_gorsel"]; $TempDirectory = "moda/"; unlink($TempDirectory."/".$gorsell); endwhile; $klasor="moda/";//dosyaları atmak istediğiniz klasörün adı srand ((double) microtime( )*1000000); $radi = rand(); $dosya_isim_sayi=count($_FILES['resim']['name']); for($i=0;$i<$dosya_isim_sayi;$i++){ if(!empty($_FILES['resim']['name'][$i])){ move_uploaded_file($_FILES['resim']['tmp_name'][$i],"moda/".$radi.$_FILES['resim']['name'][$i]); } } foreach ($_FILES['resim']['name'] as $key=> $value) { $valuee = $value.$radi; } sorgu("UPDATE t_urg_urungorsel SET urn_gorsel = '$valuee', urn_ilksira = '$key', urn_id = '$id', urn_isim = '$isim' WHERE urn_id = '$id' LIMIT 1 "); }
12 yıl önce yazılmış -
evr
sorunsal hala devam ediyor. inputun biri boş olunca random değeri atıyor sadece12 yıl önce yazılmış -
GncArt
Sorununu tam nedenini anlamış değilim fakat kullandığım bir ürün düzünleme kodunu paylaşıyorum. Gerekli yerleri değiştirerek denemeni isteyeceğim.
<?php $id=$_GET['id']; $t=mysql_fetch_array(mysql_query("SELECT * FROM urun WHERE id='$id'")); foreach($_POST AS $key => $value) {${$key} = $value;} $ip=$_SERVER['REMOTE_ADDR']; if ($make!="") { mysql_query("UPDATE `urun` SET `kid` = '$kategori', `make` = '$make', `model` = '$model', `size` = '$size', `year` = '$year', `impression` = '$impression', `location` = '$location', `price` = '$price', `description` = '$description', `aciklama` = '$aciklama', `other` = '$diger', `special` = '$special' WHERE `id` ='$id' LIMIT 1 ;") or die("Hata..".mysql_error()); echo '<div align="center"><div class="tamam" align="left"> Ürün Başarıyla Güncellendi...<br><br> <a href="panel.php?q=urunler">Geri Dön</a></div></div>'; } else { ?> <form id="form1" name="kat_ekle" method="post" action=""> ... form kodları.. </form> <?php } ?>
form kodları alanında ise input değerlerini en başta yaptırdığım sorgudan alıyorum.ör:
<input type="text" value="<?php echo $t['make']; ?>" /> ...
12 yıl önce yazılmış -
evr
maalsef olmuyor. İlkini seçiyorum value değeri boş dönüyor ama FILES dumpta görüyorum veriyi... Foreachi dediğiniz gibi de denedim olmadı.12 yıl önce yazılmış -
GncArt
Benim anlamdığım ürün düzenleme sayfasında verilerin değerlerini çektiğinizde sonuçta input alanın içi dolu oluyor. Eğer değiştirmeseniz bile sadece değişen kısımlar güncellenir. Diğer içeriğin değeri sıfırlanmaz.
Değerleri alırken ki SQL sorgunuzu dikkatlice yapınız.12 yıl önce yazılmış
-
-
Sanırım ben sorunu pek anlamadım. Bugün ki eğitimden olsa gerek neyse.. Şimdi senin kodda gördüğüm kadarıyla input value'ları ürüne ait resimleri vermişsin. Buda ürün düzenlemede yeni resim seçmesede value'daki resimleri alıp tekrar yükletiyorsun? Yanlış mı görmüşüm?
random ürettiğin sayı ise for veya foreach dışında kaldığı için hep aynı kalır. Gerçi bu sorun teşkil etmeyebilir ama döngü içinde oluştursan farklı sayılar olup çeşitlilik artışı sağlar :)
Son olarak neden 2 ayrı döngü var? aslında ikisinde de yapmak istenen aynı fazladan kullanmışsın sanırım. ya foreach olanı ya da for olanı kullansanda tek döngüde bütün işlemlerini halletsen daha iyi olmaz mı?
Bide gerçekten ben tam olarak sorunun ne olduğunu anlamadım biraz detay anlatabilir misin ne yapmak istediğini ?-
evr
for döngüsüne taşıdım hepsini... rand() üretimi pek önemli değil şuan.
LIMIT1 koydum sorguya... birtanesini seçip diğerini seçmediğimde boş veri geliyor. Onun dışında ikisini doldurunca normal çalışıyor. Sorun tam olarak böyle.
Cevaplar için teşekkür ederim12 yıl önce yazılmış
-