Şimdi Ara

Php Dosya Kontrolü Problemi

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
9
Cevap
0
Favori
316
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Kod

    Yığını:
        $ad = $_POST['ad'];     $ozellik = $_POST['ozellik'];     $kategori = $_POST['kategori'];     $eskifiyat = $_POST['eskifiyat'];     $yenifiyat = $_POST['yenifiyat'];     $indirimlifiyat = $_POST['indirimlifiyat'];     $urunsayisi = $_POST['urunsayisi'];     $urunalani = $_POST['urunalani'];     $icerikid = $_POST['icerikid'];     foreach ($ad as $index => $names) {       $s_ad = $names;       $s_ozellik = $ozellik[$index];       $s_kategori = $kategori[$index];       $s_eskifiyat = $eskifiyat[$index];       $s_yenifiyat = $yenifiyat[$index];       $s_indirimlifiyat = $indirimlifiyat[$index];       $s_urunsayisi = $urunsayisi[$index];       $s_urunalani = $urunalani[$index];       $s_icerikid = $icerikid[$index];             $dosya = 'json/' . $s_icerikid . '.json';       if (file_exists($dosya)) {       echo "$dosya diye bir dosya var";       exit();       } else {         // dosya yoksa islemlere devam et         global $filename;         $filename = $s_icerikid.".json";         $myObj->ss_dosya_adi[] = $dosya_adi;         $myObj->ss_ad = $s_ad;         $myObj->ss_ozellik = $s_ozellik;         $myObj->ss_kategori = $s_kategori;         $myObj->ss_eskifiyat = $s_eskifiyat;         $myObj->ss_yenifiyat = $s_yenifiyat;         $myObj->ss_indirimlifiyat = $s_indirimlifiyat;         $myObj->ss_urunsayisi = $s_urunsayisi;         $myObj->ss_urunalani = $s_urunalani;         $myObj->ss_icerikid = $s_icerikid;         $dizijson = json_encode($myObj);         file_put_contents("json/" . $filename, $dizijson);         if (move_uploaded_file($gecici_yol, "../../images/indexurunler/" . $dosya_adi)) {         }       }     }



    Merhaba. Php'de bir yerde takıldım. Sorunum şu: Bir form var. Inputlar vs. var form'da. "$icerikid" değişkenine depolanan veri, json dosyası oluşturmamı sağlıyor. Mesela input'a "elma" kelimesini girersem, "elma.json" dosyası oluşuyor. Şimdi, "elma.json" dosyası mevcut mu diye kontrol etmek istediğimde de, eğer dosya varsa "dosya mevcut" uyarısını veriyor. Eğer dosya mevcut değilse dosyayı oluşturuyor ve "dosya mevcut" uyarısı veriyor. Halbuki, dosya mevcut değilse uyarı vermemesi lazım.








  • Kod

    Yığını:
    if (file_exists($dosya)) {

    yazan yeri


    Kod

    Yığını:
    if (!file_exists($dosya)) {
  • Merhabalar. Sizin önerdiğiniz kodu yaptığımda, eğer dosya mevcutsa arka arkaya iki kere uyarı veriyor.

    Şu şekilde: "json/3.jsonadında dosya var" "json/3.jsonadında dosya var"

    Eğer dosya mevcut değilse tek uyarı veriyor. Şu şekilde: "json/3.jsonadında dosya var"


    Benim sorun yaşadığım yerde tam burası. Dosya mevcut olsa da uyarı veriyor, olmasa da. Normalde dosya mevcut değilken uyarı vermemesi lazım. Sorun şöyle bir şeyden mi kaynaklanıyor acaba? Döngüde değer iki defa işleniyor. İlkinde dosya mevcut değilken, ikinci kere döndüğünde dosya mevcut uyarısı veriyor. Ama nasıl çözmem gerektiğini bilemedim.

  • $dosya = 'json/'.$_POST['ad'].'.json';


    if(file_exist($dosya)) {

    echo "hede";

    exit();

    }


    file_put_contents($dosya,json_encode($_POST));

  • "Delifişek" Şimdi şöyle anlatayım. Dosyanın adını zaten "$icerikid" değişkenine aktarmıştım. Çektiğim veri, multiple upload olduğu için de bu değişkeni döngüyle kullandım ve değişkenim "$s_icerikid" oldu. Verilerimi json dosyasına kayıt etmek istediğim için de bu değişken, json kodlarının içinde "$ss_icerikid" ye dönüştü. Sizin kullandığınız "$_POST" u ben bu şekilde nasıl kullanabilirim anlayamadım.

  • Multiple upload derken ?


    şunun çıktısını gönderirmisin ?



    echo "<pre>".print_r($_POST,true)."</pre>";

  • Dediğinizi nereye yazacağımı bilemedim. Form'u koyuyorum. Multi upload (çoklu yükleme) işlemi. Input'ların "name" alanlarında "ad[]" şeklindeki yapı.

    Kod

    Yığını:
    <form action="urunekleislem.php" method="POST"  enctype="multipart/form-data">             <div class="row text-white mt-3 text-center mx-auto" style="margin-bottom:10px;">                 <div class="col bg-success" style="height:35px; line-height:35px;">                     Resim Seç                 </div>             </div>                         <div id="hepsi" >                 <div class="row">                     <div class="col-lg-12 p-1 text-white mt-1">                         <input class="text-center form-control urunekle_urunadi" type="file" name="dosya[]" value="Resim Yükle" id="dosya" required multiple>                     </div>                                         <div class="col-lg-12 p-1 text-white mt-1">                         <input class="text-center form-control urunekle_urunadi" type="text" name="ad[]" placeholder="Ürün Adı" required>                     </div>                     <div class="col-lg-12 p-1 text-white mt-1">                         <textarea class="col-lg-12 ckeditor text-center indexsayfa_urunekle_urunozellikleri" name="ozellik[]" style="height:200px;" placeholder="Özellik Giriniz" required></textarea>                     </div>                                         <div class="col-lg-12 p-1 text-white mt-1">                         <select id="mySelect" onclick="myFunction()" onchange="kategorisec()" class="col-lg-12 text-center urunekle_urun_select" name="kategori[]" required>                             <option value="">                             Ürün Kategorisi                             </option>                             <?php                                 $kategorisorgusu = "SELECT * FROM kategoriekle";                                 $kategorisorgu = mysqli_query($db, $kategorisorgusu);                                 foreach($kategorisorgu as $kategorigoster) {                             ?>                             <option id="kategori" value="<?php echo $kategorigoster['kategori_adi']; ?>">                                 <?php                                     echo $kategorigoster['kategori_adi'];                                 ?>                             </option>                             <?php } ?>                                                     </select>                     </div>                     <div class="col-lg-12 p-1 text-white mt-1">                         <select class="col-lg-12 text-center urunekle_deger_select" name="urunalani[]" required>                             <option value="">                             Alan Kategorisi                             </option>                             <option name="slayturunekle" value="slayturunekle">                             Slayt Ürün Ekle                             </option>                             <option name="encoksatilanurunekle" value="encoksatilanurunekle">                             En Çok Satılan Ürün Ekle                             </option>                             <option name="populerurunekle" value="populerurunekle">                             Popüler Ürün Ekle                             </option>                             <option name="sicakurunekle" value="sicakurunekle">                             Sıcak Fırsatlar Ekle                             </option>                             <option name="yenigelenurunekle" value="yenigelenurunekle">                             Yeni Gelen Ekle                             </option>                             <option name="solbannerekle" value="solbannerekle">                             Sol Banner Ekle                             </option>                             <option name="ortabannerekle" value="ortabannerekle">                             Orta Banner Ekle                             </option>                             <option name="sagbannerekle" value="sagbannerekle">                             Sağ Banner Ekle                             </option>                             <option name="ozelurunlerekle" value="ozelurunlerekle">                             Özel Ürünler Ekle                             </option>                             <option name="altbannerekle" value="altbannerekle">                             Alt Banner Ekle                             </option>                             <option name="soneklenenurunlerekle" value="soneklenenurunlerekle">                             Son Eklenen Ürünler Ekle                             </option>                         </select>                     </div>                     <div class="col-lg-12 p-1 text-white mt-1">                         <input class="col-lg-12 text-center indexsayfa_urunekle_eskifiyat" type="text" name="eskifiyat[]" placeholder="Eski Fiyat" required>                     </div>                     <div class="col-lg-12 p-1 text-white mt-1">                         <input class="col-lg-12 text-center indexsayfa_urunekle_yenifiyat" type="text" name="yenifiyat[]" placeholder="Yeni Fiyat" required>                     </div>                     <div class="col-lg-12 p-1 text-white mt-1">                         <input class="col-lg-12 text-center indexsayfa_urunekle_indirimlifiyat" type="text" name="indirimlifiyat[]" placeholder="İndirimli Fiyat" required>                     </div>                     <div class="col-lg-12 p-1 text-white mt-1">                         <input id="e" class="col-lg-12 text-center indexsayfa_urunekle_urunsayisi" type="text" name="urunsayisi[]" placeholder="Ürün Sayısı" required>                     </div>                     <div class="col-lg-12 p-1 text-white mt-1">                         <input id="e" class="col-lg-12 text-center indexsayfa_urunekle_urunsayisi" type="text" name="icerikid[]" placeholder="İçerik Id" required>                     </div>                 </div>             </div>             <div class="pastenewforms"> </div>                         <input type="submit" class="btn d-grid w-25 btn-success mx-auto mt-2" value="Ürünü Kaydet">         </form>




  • formdan dizi (array) post etmek 20 sene öncenin hack soytarılığı, ona da peki de. senin 1 tane formun var. nasıl birden fazla ürün post edeceksin.


    yani bir form alanının adı eskifiyat[] olduğu zaman sen teorik olarak 30 tane eskifiyat gönderebilirsin demek.


    -form1

    eskifiyat[]

    -form2

    eskifiyat[]

    -form3

    eskifiyat[]

    -form4

    eskifiyat[]


    gibi


    lakin dediğim gibi bunlar 20 sene öncesinin saçma çözümleri.


    veya sen tam olarak ne yapmaya çalışıyorsun. hedefin nedir ?

  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.