lostyazilim

Mysql, mysql_num_rows() hatası

9 Mesajlar 1.256 Okunma
lstbozum
wmaraci reklam

HidrolikAdam HidrolikAdam yok Kullanıcı
  • Üyelik 17.10.2013
  • Yaş/Cinsiyet 27 / E
  • Meslek yok.
  • Konum İstanbul Anadolu
  • Ad Soyad E** Ç**
  • Mesajlar 475
  • Beğeniler 316 / 114
  • Ticaret 1, (%100)
Forumdan bir arkadaşın paylaştığı scriptte var olan kullanıcı girişini düzenliyorum, eposta önce kullanıldıysa kayıt olmamasını sağlamaya çalışıyorum. yaklaşık 3 - 4 saattir bu işin içinden çıkamadım bakmadığım yer kalmadı ama hala hata alıyorum, forumda var olup göremediysem affedin.

if (isset($_POST["kayit"])) {

$ad = alt_replace(strip_tags(htmlspecialchars($_POST["ad"])));
$soyad = alt_replace(strip_tags(htmlspecialchars($_POST["soyad"])));
$eposta = alt_replace(strip_tags(htmlspecialchars($_POST["eposta"])));
$sifre = md5(sha1($_POST["sifre"]));
$kullanici_adi = md5($ad);
$notlar = alt_replace(strip_tags(htmlspecialchars($_POST["notlar"])));


$mail=$_POST["eposta"]; //postla gelen maili değişkene bağladım
include("mysql/mysql_baglan.php");

$mail_kayitlimi = mysql_query("SELECT * FROM oturum where eposta='$mail'"); //Satırı kendinize göre editleyin.
$sayi=mysql_num_rows($mail_kayitlimi); //veri tabanında bulunan kayıtların mail adresi bize gelen mail adresi olan kayıtların kaç tane olduğunu sordum.

if($sayi=="0") { //sıfırsa yani kayıtlı veri yoksa devam ediyorum.

$yeni = $mysql -> prepare("INSERT INTO oturum(ad, soyad, eposta, sifre, kullanici_adi, notlar) values(?, ?, ?, ?, ?, ?)");
$yeni -> execute(array($ad, $soyad, $eposta, $sifre, $kullanici_adi, $notlar));
echo 'Kayıt Başarılı';

}else{
//eğer sıfırdan farklı bir sayıysa örneğin "1" bu mail kayıtlı demektir.
echo"Şuanda bu mail adresini kullanan bir üyemiz var";

}

}


?>


Kodların bu haliyle hiç bir şekilde kayıt kabul etmemekte ve şu hatayı vermekte:
Warning: mysql_num_rows() expects parameter 1 to be resource, boolean given in C:\xampp\htdocs\oturum\giris.php on line 104

104. Satır
$sayi=mysql_num_rows($mail_kayitlimi); //veri tabanında bulunan kayıtların mail adresi bize gelen mail adresi olan kayıtların kaç tane olduğunu sordum.

yardımcı olacak veya olmaya niyetlenen herkese şimdiden teşekkür ederim.
 

 

Mimarlık/Bilgisayar Mühendisliği Öğrencisi. Kendi halinde.
wmaraci
reklam

FuadQuliyev FuadQuliyev PHP <3 Kullanıcı
  • Üyelik 05.06.2015
  • Yaş/Cinsiyet 34 / E
  • Meslek Web Developer
  • Konum Azerbeycan
  • Ad Soyad K** G**
  • Mesajlar 21
  • Beğeniler 1 / 2
  • Ticaret 0, (%0)
$sorgu= mysql_query("INSERT INTO oturum(eposta) VALUES('".$eposta."')");

if($sorgu){
echo"Kayıt Başarısız Oldu";
}else{
echo"Kayıt Başarılı";
}
}

böyle deneyin bakalım hocam
 

 

HidrolikAdam HidrolikAdam yok Kullanıcı
  • Üyelik 17.10.2013
  • Yaş/Cinsiyet 27 / E
  • Meslek yok.
  • Konum İstanbul Anadolu
  • Ad Soyad E** Ç**
  • Mesajlar 475
  • Beğeniler 316 / 114
  • Ticaret 1, (%100)

FuadQuliyev adlı üyeden alıntı

$sorgu= mysql_query("INSERT INTO oturum(eposta) VALUES('".$eposta."')");

if($sorgu){
echo"Kayıt Başarısız Oldu";
}else{
echo"Kayıt Başarılı";
}
}

böyle deneyin bakalım hocam


hocam çok sağolun böyle çalışıyor ama eposta dışında veritabanına herhangi birşey kayıt etmiyor, VALUES('".$eposta."')"); kısmını nasıl düzenlemem gerektiğini de bilemedim. Ona da bakarsınız muazzam olur.
 

 

Mimarlık/Bilgisayar Mühendisliği Öğrencisi. Kendi halinde.

FuadQuliyev FuadQuliyev PHP <3 Kullanıcı
  • Üyelik 05.06.2015
  • Yaş/Cinsiyet 34 / E
  • Meslek Web Developer
  • Konum Azerbeycan
  • Ad Soyad K** G**
  • Mesajlar 21
  • Beğeniler 1 / 2
  • Ticaret 0, (%0)
$sorgu= mysql_query("INSERT INTO oturum(ad, soyad, eposta, sifre, kullanici_adi, notlar) VALUES('".$ad.", ".$soyad.", ".$eposta.", ".$sifre.", ".$kullanidi_adi.", ".$notlar."')");

if($sorgu){
echo"Kayıt Başarısız Oldu";
}else{
echo"Kayıt Başarılı";
}
}

zaten kayıt edemezdi hocam :)
buyurun, bişey söyleyeğim elinizden geldiğince kodları birleştirin sistem kasa biliyor fazla kod olunca 2 foksiyonu 1 kod yapa biliyorsa 2 tane kod yazmaya gerek yok :) başarılar
 

 

wmaraci
wmaraci

HidrolikAdam HidrolikAdam yok Kullanıcı
  • Üyelik 17.10.2013
  • Yaş/Cinsiyet 27 / E
  • Meslek yok.
  • Konum İstanbul Anadolu
  • Ad Soyad E** Ç**
  • Mesajlar 475
  • Beğeniler 316 / 114
  • Ticaret 1, (%100)

FuadQuliyev adlı üyeden alıntı

$sorgu= mysql_query("INSERT INTO oturum(ad, soyad, eposta, sifre, kullanici_adi, notlar) VALUES('".$ad.", ".$soyad.", ".$eposta.", ".$sifre.", ".$kullanidi_adi.", ".$notlar."')");

if($sorgu){
echo"Kayıt Başarısız Oldu";
}else{
echo"Kayıt Başarılı";
}
}

zaten kayıt edemezdi hocam :)
buyurun, bişey söyleyeğim elinizden geldiğince kodları birleştirin sistem kasa biliyor fazla kod olunca 2 foksiyonu 1 kod yapa biliyorsa 2 tane kod yazmaya gerek yok :) başarılar

tekrar tekrar rahatsız ediyorum çok özür dilerim,
hocam işin açıkçası hostumda mysql fonksiyonu çalışmıyor pdo ile yapıyorum. pdo bu şekilde kayıtlı
$mysql = new PDO("mysql:host=localhost;dbname=sosyal;charset=utf8","Admin","123456");
sizin verdiğiniz kodu elimden geldiğince çevirerek yapıyorum, ilk verdiğiniz kodda e-posta kaydolurken 2. kodda hiç bir şekilde kayıt yapılmamakta sürekli olarak "Maalesef bu kullanıcı adını az evvel başka bi kullanıcımız aldı, özür dileriz..." uyarısını almaktayım.

ilk kodu böyle kullandım
$sorgu= $mysql -> query("INSERT INTO oturum(eposta, ad) VALUES('".$eposta.", ".$ad."')");



if($sorgu){
$yeni = $mysql -> prepare("INSERT INTO oturum(ad, soyad, eposta, sifre, kullanici_adi, notlar) values(?, ?, ?, ?, ?, ?)");
$yeni -> execute(array($ad, $soyad, $eposta, $sifre, $kullanici_adi, $notlar));
echo 'Kayıt Başarılı';
}else{
echo"Maalesef bu kullanıcı adını az evvel başka bi kullanıcımız aldı, özür dileriz...";

}


2. koduda verdiğiniz eklemelerle kullandım.

Ayrıca $yeni = $mysql -> prepare("INSERT INTO oturum(ad, soyad, eposta, sifre, kullanici_adi, notlar) values(?, ?, ?, ?, ?, ?)");
$yeni -> execute(array($ad, $soyad, $eposta, $sifre, $kullanici_adi, $notlar));

kısmı olmadan da kayıt yapmıyor bunuda fark ettim.
anladığınız gibi bilgi birikimim ne yazık ki kod sürekli deneme yanılma yöntemiyle çözmeye çalışıyorum sorunları. tüm gün bu sorunla uğraştım bir türlü çözüme ulaşamadım ne yazikki.
 

 

Mimarlık/Bilgisayar Mühendisliği Öğrencisi. Kendi halinde.

FuadQuliyev FuadQuliyev PHP <3 Kullanıcı
  • Üyelik 05.06.2015
  • Yaş/Cinsiyet 34 / E
  • Meslek Web Developer
  • Konum Azerbeycan
  • Ad Soyad K** G**
  • Mesajlar 21
  • Beğeniler 1 / 2
  • Ticaret 0, (%0)
yok estağfurullah ne rahatsızlığı hocam isterseniz dosyayı bana gönderin kendim deneyip sonucu eklerim. çok fazla kod var sonuncu yazdığınız kod satırında iki tane insert kullanılıyor açıkcası kafam karıştı :) scripte bakma şansım olursa kesin sonuc elde ederiz
 

 

HidrolikAdam HidrolikAdam yok Kullanıcı
  • Üyelik 17.10.2013
  • Yaş/Cinsiyet 27 / E
  • Meslek yok.
  • Konum İstanbul Anadolu
  • Ad Soyad E** Ç**
  • Mesajlar 475
  • Beğeniler 316 / 114
  • Ticaret 1, (%100)

FuadQuliyev adlı üyeden alıntı

yok estağfurullah ne rahatsızlığı hocam isterseniz dosyayı bana gönderin kendim deneyip sonucu eklerim. çok fazla kod var sonuncu yazdığınız kod satırında iki tane insert kullanılıyor açıkcası kafam karıştı :) scripte bakma şansım olursa kesin sonuc elde ederiz


hocam bu forumda paylaşılan bu scripti kullanuyorum kendi dosyalarımı upload edince pm atarım hocam

https://wmaraci.com/forum/ucretsiz-scriptler/sosyal-ag-scripti-ucretsiz-indir-218441.html
 

 

Mimarlık/Bilgisayar Mühendisliği Öğrencisi. Kendi halinde.

FuadQuliyev FuadQuliyev PHP <3 Kullanıcı
  • Üyelik 05.06.2015
  • Yaş/Cinsiyet 34 / E
  • Meslek Web Developer
  • Konum Azerbeycan
  • Ad Soyad K** G**
  • Mesajlar 21
  • Beğeniler 1 / 2
  • Ticaret 0, (%0)

HidrolikAdam adlı üyeden alıntı

hocam bu forumda paylaşılan bu scripti kullanuyorum kendi dosyalarımı upload edince pm atarım hocam

https://wmaraci.com/forum/ucretsiz-scriptler/sosyal-ag-scripti-ucretsiz-indir-218441.html


mesaj kutunuzu kontrol edersiniz. inciledim scripti yeni kod yolladım
 

 

HidrolikAdam HidrolikAdam yok Kullanıcı
  • Üyelik 17.10.2013
  • Yaş/Cinsiyet 27 / E
  • Meslek yok.
  • Konum İstanbul Anadolu
  • Ad Soyad E** Ç**
  • Mesajlar 475
  • Beğeniler 316 / 114
  • Ticaret 1, (%100)
Sorun FuadQuliyev in yardımlarıyla aşağıdaki kodlarla çözülmüştür.


if($ad == ""||$soyad ==""||$eposta ==""||$sifre ==""){
echo 'Lütfen bütün sutünleri doldurun.';
}
else{

$kontrol = $mysql->query("SELECT COUNT(*) FROM oturum WHERE eposta='$eposta'");
$sonuc = $kontrol->fetch();
$varmi = $sonuc[0];
if($varmi!=0){
echo"eposta kayıtlı";
}
else{
$yeni = $mysql -> prepare("INSERT INTO oturum(ad, soyad, eposta, sifre, notlar) values(?, ?, ?, ?, ?)");
$yeni -> execute(array($ad, $soyad, $eposta, $sifre, $notlar));
echo 'Kayıt Başarılı';
}
}
}
 

 

Mimarlık/Bilgisayar Mühendisliği Öğrencisi. Kendi halinde.
wmaraci
Konuyu toplam 1 kişi okuyor. (0 kullanıcı ve 1 misafir)
Site Ayarları
  • Tema Seçeneği
  • Site Sesleri
  • Bildirimler
  • Özel Mesaj Al