v2.5.2
Giriş yap

Txt Dosyasına Yazılan Verileri Kullanıcıya Göre Nasıl Ayırabilirim

yazilimyolcusu
507 defa görüntülendi

Arkadaşlar merhaba. Benim aklıma bir şey geliyor ama nasıl yaparım bilemiyorum. Mesela oturumu açan kişi "ali" kullanıcı adıyla giriş yapsın. Sepete ürünlerini eklesin. Sepetten de txt dosyasına yazdırsın ama text dosyasına verdiğimiz isim her seferinde değişsin. Mesela bu kullanıcı siparişi verdiğinde text dosyası otomatikman şöyle oluşabilir. "ali_siparis1". Başka bir sefer başka bir sipariş verdiğinde "ali_siparis2" gibi. Ben bu işin nasıl olduğunu bilmediğimden aklıma böyle bir şey geldi. Ne yapılmalı sizce.

yazilimyolcusu
1144 gün önce

Peki o zaman şunu nasıl yapabilirim. İnternette şöyle bir şey var. Text dosyasından veritabanına aktarma işlemini yapıyor.

Text dosyamın içeriği

{
    "Alıcının Adı": [
        "ad"
    ],
    "Alıcının Firma Adı": [
        "firma"
    ],
    "Alıcının Şehri": [
        "18"
    ],
    "Alıcının İlçesi": [
        "ilçe"
    ],
    "Alıcının Telefon Numarası": [
        "999999999"
    ],
    "Alıcının E-Posta Adresi": [
        "[email protected]"
    ],
    "Alıcının Sipariş Notları": [
        "siparişler"
    ],
    "Ürünün Stok Kodu": [
        "8"
    ],
    "Ürünün Stok Sayısı": [
        "8"
    ],
    "Ürünün Adı": [
        "Ürün 2"
    ]
}

Text dosyasını veritabanına aktarmama yarayan sayfa içeriği

<?php
include("baglanti.php");

$dosya=new SplFileObject('ornektext.txt');
while(!$dosya->eof()) {
$satir=$dosya->fgets();
list($isim, $firmaadi, $sehir, $ilce, $telefon, $eposta, $siparis, $stokkodu, $stoksayisi, $urunadi)=explode(',',$satir);
$sorgu = $db->prepare('INSERT INTO sepetonaylanan VALUES (NULL,?,?,?,?,?,?,?,?,?,?)');
$sorgu->bindValue(1,$isim,PDO::PARAM_STR);
$sorgu->bindValue(2,$firmaadi,PDO::PARAM_STR);
$sorgu->bindValue(3,$sehir,PDO::PARAM_STR);
$sorgu->bindValue(4,$ilce,PDO::PARAM_STR);
$sorgu->bindValue(5,$telefon,PDO::PARAM_STR);
$sorgu->bindValue(6,$eposta,PDO::PARAM_STR);
$sorgu->bindValue(7,$siparis,PDO::PARAM_STR);
$sorgu->bindValue(8,$stokkodu,PDO::PARAM_INT);
$sorgu->bindValue(9,$stoksayisi,PDO::PARAM_INT);
$sorgu->bindValue(10,$urunadi,PDO::PARAM_STR);
$sorgu->execute();
}
?>

Veritabanına kayıt etmiyor ve verdiği hata
Undefined offset: 9 in C:\AppServ\www\ornek\kaydett.php on line 7

Yani hatayı şurada buluyor.
ist($isim, $firmaadi, $sehir, $ilce, $telefon, $eposta, $siparis, $stokkodu, $stoksayisi, $urunadi)=explode(',',$satir);