Şimdi Ara

Sitemi bitirmek üzereyim 2 noktada tıkandım destek lazım. ÇÖZÜLDÜ

Daha Fazla
Bu Konudaki Kullanıcılar: Daha Az
2 Misafir - 2 Masaüstü
5 sn
7
Cevap
0
Favori
554
Tıklama
Daha Fazla
İstatistik
  • Konu İstatistikleri Yükleniyor
0 oy
Öne Çıkar
Sayfa: 1
Giriş
Mesaj
  • Sitem bitmek üzere tamamiyle Dreamweaver kullanarak yaptım (PHP konusunda çok acemiyim).
    Sizlerden yardım istediğim konular ise
    1- Aşağıda kodlarını gördüğünüz resimleri dosyaya gönderip adını veritabanına yazdırdığım kod bloğu. Bu bloktan anlıyacağınız üzere resim ismi $_name_ değişkenine atanmakta ve bu değişkeni ise

     
    GetSQLValueString($_name_.$_size_['image'], "text"),

    kodları ilede veritabanına yazdırıyorum. Ancak burda şöyle bir sıkıntı var. Kullanıcı aynı isimde bir dosya daha upload edecek olursa hoş şeylerle karşılaşmayacağım.
    PHP kodlamada acemiyim. Eğer hazıra konmacı demezseniz. Aşağıda upload kodlarıda mevcut bu kodlar arasında $_name_ değişkenine nasıl fonksiyon uygular yada nasıl bir değer vererek veritabanına dosya adının benim belirleyeceğim şekilde sürekli değişen şekilde girmesini sağlarım.
     
    if (phpversion() > "4.0.6") {
    $HTTP_POST_FILES = &$_FILES;
    }
    define("MAX_SIZE",300000);
    define("DESTINATION_FOLDER", "../resimler");
    define("no_error", "");
    define("yes_error", "ilan_gir.php");
    $_accepted_extensions_ = "";
    if(strlen($_accepted_extensions_) > 0){
    $_accepted_extensions_ = @explode(",",$_accepted_extensions_);
    } else {
    $_accepted_extensions_ = array();
    }
    $_file_ = $HTTP_POST_FILES['resim'];
    if(is_uploaded_file($_file_['tmp_name']) && $HTTP_POST_FILES['resim']['error'] == 0){
    $errStr = "";
    $_name_ = $_file_['name'];
    $_type_ = $_file_['type'];
    $_tmp_name_ = $_file_['tmp_name'];
    $_size_ = $_file_['size'];
    if($_size_ > MAX_SIZE && MAX_SIZE > 0){
    $errStr = "File troppo pesante";
    }
    $_ext_ = explode(".", $_name_);
    $_ext_ = strtolower($_ext_[count($_ext_)-1]);
    if(!in_array($_ext_, $_accepted_extensions_) && count($_accepted_extensions_) > 0){
    $errStr = "Estensione non valida";
    }
    if(!is_dir(DESTINATION_FOLDER) && is_writeable(DESTINATION_FOLDER)){
    $errStr = "Cartella di destinazione non valida";
    }

    if(empty($errStr)){
    if(@copy($_tmp_name_,DESTINATION_FOLDER . "/" . $_name_)){
    header("Location: " . no_error);
    } else {
    header("Location: " . yes_error);
    }
    } else {
    header("Location: " . yes_error);
    }
    }



    2. konum ise checkboxlar
    kayıt girme sırasında fazlaca checkbox kullanmak zorundayım ve bu checkboxların tıklananlarının veritabanına kaydını nasıl yapmalıyım ki tekrar tıklananları göstermek istediğimde değerleri ile sayfaya yazdırabileyim.



    < Bu mesaj bu kişi tarafından değiştirildi besaer -- 7 Temmuz 2012; 12:22:33 >







  • en basit olarak, date al, dosya ismine bunu ekle.
  • quote:

    Orijinalden alıntı: cnnysn

    en basit olarak, date al, dosya ismine bunu ekle.

    Orda haklısın ama resim 1 tane değil ki 10 tane!
  • benim kullandığım yöntem örnek ;

    $resim_uzanti = substr($_name,-4); // resmin uzantısını alıyoruz örnek ekran çıktısı : .jpg
    $resim_adi_uret = substr(md5(uniqid(rand()),0,10); // burada 10 karakterli md5 raslantısal ve resimin upload zamanını alarak eşşiz bir değer ürettik
    // örnek ekran çıktısı : 8a83ff0ccd

    $resim_adi = $resim_adi_uret.$resim_uzanti ; // burada birleştirdik örnek ekran çıktısı : 8a83ff0ccd.jpg
  • quote:

    Orijinalden alıntı: murano55

    benim kullandığım yöntem örnek ;

    $resim_uzanti = substr($_name,-4); // resmin uzantısını alıyoruz örnek ekran çıktısı : .jpg
    $resim_adi_uret = substr(md5(uniqid(rand()),0,10); // burada 10 karakterli md5 raslantısal ve resimin upload zamanını alarak eşşiz bir değer ürettik
    // örnek ekran çıktısı : 8a83ff0ccd

    $resim_adi = $resim_adi_uret.$resim_uzanti ; // burada birleştirdik örnek ekran çıktısı : 8a83ff0ccd.jpg


    Bende buna benzer ama asla bu kadar kompleks olmayacak bir yolla çözdüm.
    Bunu mutlaka deneyeceğim. Teşekkür ederim.
  • Maalesef senin yol olmadı
    quote:

    syntax error, unexpected ';' in
    hatası verdi. $rastgele satırında.
    örmek kullanımım da bu
    quote:

    $rastgele = substr(md5(uniqid(rand()),0,10);
    $_name_ = $rastgele."."."jpeg";


    Çalışan kodlarım ise bu
    quote:

    $rastgele = rand (1,10000000);
    $_name_ = $rastgele."."."jpeg";



    < Bu mesaj bu kişi tarafından değiştirildi besaer -- 7 Temmuz 2012; 11:53:11 >
  • Yok arkadaşım acele etmişim oldu uzanti isimli değişkeni eklememişim. Sayende benzersiz resim id leri ürettim. Artık bu topic bu tip sıkıntısı olan benim gibi acemilere yol gösterir...
  • 
Sayfa: 1
- x
Bildirim
mesajınız kopyalandı (ctrl+v) yapıştırmak istediğiniz yere yapıştırabilirsiniz.