Çözüldü Verileri çekerken URL nasıl yapılır?

Bu konu çözüldü olarak işaretlenmiştir. Çözülmediğini düşünüyorsanız konuyu rapor edebilirsiniz.

autolas

Femtopat
Katılım
20 Kasım 2023
Mesajlar
13
Daha fazla  
Cinsiyet
Erkek
Merhaba. Text dosyasından verileri çekerken başlıkları çekiyor sorunsuz yapmak istediğim başlıkları URL'ye nasıl çevirebiliriz? Ayrı bir sütünde teşekkürler.

PHP:
<?php
$host = "localhost";
$dbname = "xxxxx";
$username = "xxxxx";
$password = "xxxxx";
try {
 $pdo = new PDO("mysql:host=$host;dbname=$dbname", $username, $password);
 $pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
} catch (PDOException $e) {
 die("Veritabanı hatasi" . $e->getMessage());
}
$dosyaAdi = "veriler.txt";
try {
 $dosya = fopen($dosyaAdi, "r");
 while (!feof($dosya)) {
 $satir = fgets($dosya);

 if (!empty($satir)) {
 $stmt = $pdo->prepare("INSERT INTO makale (adi) VALUES (:deger)");
 $stmt->bindParam(':deger', $satir);
 $stmt->execute();
 }
 }
 fclose($dosya);
 echo "eklendi";
} catch (Exception $e) {
 echo "eklenmiyor" . $e->getMessage();
}
?>
 
Çözüm
rtrim kullanırsan çözülür diye düşünüyorum.

PHP:
$satir = fgets($dosya);
$satir = rtrim($satir);
Verilerde ID varsa onu numara yerine URL slug'ına çevirip slug'ı ID olarak tanımlarsan her veri için özgün URL'ye sahip olmuş olursun.
 
PHP:
$dosyaAdi = "veriler.txt";
 
try {
    $dosya = fopen($dosyaAdi, "r");
 
    while (!feof($dosya)) {
        $satir = fgets($dosya);
 
        if (!empty($satir)) {
            $url = urlencode($satir);
            $stmt = $pdo->prepare("INSERT INTO makale (adi, url) VALUES (:baslik, :url)");
            $stmt->bindParam(':baslik', $satir);
            $stmt->bindParam(':url', $url);
            $stmt->execute();
        }
    }
 
    fclose($dosya);
    echo "eklendi";
} catch (Exception $e) {
    echo "eklenmiyor" . $e->getMessage();
}
 
rtrim kullanırsan çözülür diye düşünüyorum.

PHP:
$satir = fgets($dosya);
$satir = rtrim($satir);
 
Çözüm
Bu siteyi kullanmak için çerezler gereklidir. Siteyi kullanmaya devam etmek için çerezleri kabul etmelisiniz. Daha Fazlasını Öğren.…