Veritabanına bağlandım fakat Veri Ekleyemiyorum .
Veritabanına bağlandım fakat Veri Ekleyemiyorum abiler buyrun kodlar.Anasayfada baglantı saglandı yazıyorum fakat veri eklemey kalkınca basarısız oldu hatasını alıyorum değerli çözümleriniz için şimdiden teşekkürler.
ayarlar.php
<?php
try {
$db = new PDO("mysql:host=localhost;dbname=tentent", "tententen", "tenten2014");
} catch ( PDOException $e ){
print $e->getMessage();
}
if ($db) {
echo "<font color='green'>Baglanti Saglandi</font><br >";
}
?>
index.php
<?php include ("ayarlar.php"); ?>
<html>
<head>
<title>tenten.com</title>
</head>
<body>
<?php
if ($_POST){
$isim = $_POST["isim"];
$soyisim = $_POST["soyisim"];
$Email = $_POST["Email"];
if (!empty ($isim) && !empty($soyisim) && !empty($Email)) {
//Verileri ekle
$ekle= mysql_query("insert into Kimlik (isim,soyisim,Email) values ('$isim','$soyisim','$Email')");
if ($ekle) {
echo "<font color='yellow'>Veriler basariyla eklendi!</font>";
}else {
echo "<font color ='red'>Basarisiz oldu!</font>";
}
}
} else {
?>
<h1>Mesaj Gonder </h1>
<form action="" method="post">
<table cellpadding="5" cellspacing="5">
<tr>
<td>isim:</td>
<td><input type="text" name="isim" /></td>
</tr>
<tr>
<td>soyisim:</td>
<td><input type="text" name="soyisim" /></td>
</tr>
<tr>
<td>Email:</td>
<td><textarea rows="5" cols="30" name="Email"></textarea></td>
</tr>
<tr>
<td></td>
<td><input type="submit" value="Gonder" /></td>
</tr>
</table>
</form>
<? } ?>
</body>
</html>
Php
mesaj bölümündeki form actionli degil. biryere gitmiyor bilgiler.
<form action="" method="post"> bu kısım.
gönderdiğin form ve sonuç kısmını ayrı sayfalarda yapabilirsin.
index php (mesaj formun) action="kayit.php" mesela
kayit php de !empty kontrolüne göre hata verdirir veya kayıt yaptırırsın.
veya <form action="index.php?1=14" method="post"> şeklinde yine indexe gönder ama boş kontrolünde hata verdirttiğin kısım sayfa acılır acılmaz yazar başarısız oldu diye :P benden bukadar cıkcar.
Veritabanına bağlandım fakat Veri Ekleyemiyorum
abi başka bir sürü şey denedim bunlarıda denedim ama yok yani anlamadım hatayı teamwiever versem baksanız olur mu gözlerimden şüphe etmeye başladım.
u şekilde denermisin ;
index.php
<html>
<head>
<h1>Mesaj Gonder </h1>
<form action="kayit.php" method="post">
<table cellpadding="5" cellspacing="5">
<tr><td>isim:</td><td><input type="text" name="isim" /></td></tr>
<tr><td>soyisim:</td><td><input type="text" name="soyisim" /></td></tr>
<tr><td>Email:</td>
<td><textarea rows="5" cols="30" name="Email"></textarea></td></tr><tr><td></td>
<td><input type="submit" value="Gonder" /></td>
</tr></table>
</form>
</body>
</html>
kayit.php
<?php
$baglanti = mysql_connect( "localhost", "tententen", "tenten2014" );
if ( !$baglanti )
exit( "Bağlantı sağlanamadı." );
mysql_select_db( "tentent" );
if (!empty ($isim) && !empty($soyisim) && !empty($Email)){
$isim = $_POST["isim"];
$soyisim = $_POST["soyisim"];
$Email = $_POST["Email"];
$ekle= mysql_query("insert into Kimlik (isim,soyisim,Email) values ('$isim','$soyisim','$Email')");
echo "<font color='yellow'>Veriler basariyla eklendi!</font>";}else{echo "Tüm alanları doldurmadınız !";}
mysql_close();
?>
Yine olmadı
Yine olmadı abiler kafayı yemek üzereyim aldığım hata Tüm alanları doldurmadınız :(
Php
bu satır bağlandığın anlamına gelmez.
if ($db)
önce bağlantıdan emin olmak için boş bir SELECT dorgusu gönder
mesela:
SELECT 1 FROM `tablo`
dönüş olark 1 geliyorsa bağlanmışsın demektir. aksi halde bağlanamamış bir veritabanı ile boğşuyorsun demektir. Bu PDO nesnesini falan php5 ile geliştirdiler ama bana sorarsan basit bir mysql_connect ve mysql_query komutlu ile deneme yapmak daha iyi.
Php
bu kodu bir denermisin
hata gelirse ne hatası geliyor
$baglanti = mysql_connect( "localhost", "tententen", "tenten2014" ) or die ("Bağlanılamadı");
mysql_select_db( "tentent" );
$ekle= mysql_query("insert into Kimlik (isim,soyisim,Email) values ('Adi','Soyisim','Email')");
if($ekle) {
echo "1 kayıt ekledi";
} else{
echo "Hata Oluştu: ".mysql_error();
}