Sunucu Değiştirdim PDO Insert 'lerim gerçekleşmiyor.
7
●116
- 14-09-2023, 00:43:47PHP modülü, veritabanı sürümü; güvenlik önlemleri ve yasaklı fonksiyonlar(pek sanmasam da)ONURERDGN adlı üyeden alıntı: mesajı görüntüle
- 14-09-2023, 00:46:22bir ihtimal short open tag <? ?> şeklinde kullanımlar varsa ve short open tag kapalıysa sunucuda ilgili php bölümleri çalışmaz.
- 14-09-2023, 00:48:04Hocam şimdi fark ettim sanırım güvenlik önlemleri ile alakalı olmalı.yalinyalniz adlı üyeden alıntı: mesajı görüntüle
Tablo örneği
users
ad-soyad-şifre-aktif
insert işlemim
---------------
ad
soyad
şifre
normalde aktif değeri otomatik 0 olarak giriliyordu. Yeni sunucuda bu veri eksik olduğundan insert yapmıyor sanırım . - 14-09-2023, 01:12:55try {
$pdo = new PDO("mysql:host=$hostname;dbname=$database", $username, $password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
// Tüm tabloları al
$stmt = $pdo->query("SHOW TABLES");
$tables = $stmt->fetchAll(PDO::FETCH_COLUMN);
// Her tabloyu dolaş
foreach ($tables as $table) {
// Her tablonun sütunlarını al
$stmt = $pdo->query("DESCRIBE $table");
$columns = $stmt->fetchAll(PDO::FETCH_ASSOC);
// Her sütunu dolaş
foreach ($columns as $column) {
$columnName = $column['Field'];
$columnType = $column['Type'];
// INT sütunlarını kontrol et
if (strpos($columnType, 'int') !== false) {
// INT sütunu ise, varsayılan değeri 0 olarak ayarla
$pdo->exec("ALTER TABLE $table MODIFY COLUMN $columnName INT DEFAULT 0");
echo "Tablo: $table, Sütun: $columnName güncellendi.n";
}
}
}
echo "İşlem tamamlandı!";
} catch (PDOException $e) {
echo "Hata: " . $e->getMessage();
}
Hata bu şekilde düzelmiyor. - 14-09-2023, 02:52:14Veritabanından veri eklemek istediğin tablodaki sütunların niteliği Not Null olduğu için insert edemiyor olabilir.
Onun dışında php sürümünden kaynaklı, tablo karşılaştırmalarından kaynaklı enum ve varchar sutünu veriyi kabul etmeyebilir. - 14-09-2023, 10:55:12Aynı durum benimde başıma gelmişti, gönderilmeyen değerlerin tamamını tespit edip , veritabanından varsayılan değer ataması yaparak çözmüştüm.ONURERDGN adlı üyeden alıntı: mesajı görüntüle
- 17-09-2023, 15:41:46Arkadaşlar herkese yanıtları için teşekkür ederim. Phpmyadmin'in bunun için bir değişkeni mevcutmuş bende bu videoya ulaştım çözümü burada buldum.
https://www.youtube.com/watch?v=f18x...nel=BassoniaTv