-
Üyelik
01.02.2014
-
Yaş/Cinsiyet
36 / E
-
Meslek
Tekniker
-
Konum
Giresun
-
Ad Soyad
S** K**
-
Mesajlar
229
-
Beğeniler
76 / 75
-
Ticaret
1, (%100)
Tam olarak ne hata alıyorsunuz bilmiyorum. ama şurası yanlış;
$mail-> AddAddress($mail);
burada $mail nesnesini ekleyemezsiniz. Orası string türünden referans alır, oraya mail adresi eklemeniz gerekiyor.
Örnek:
$mail-> AddAddress("isim@mail.com");
-
Üyelik
01.02.2014
-
Yaş/Cinsiyet
36 / E
-
Meslek
Tekniker
-
Konum
Giresun
-
Ad Soyad
S** K**
-
Mesajlar
229
-
Beğeniler
76 / 75
-
Ticaret
1, (%100)
Tamam hatayı farkettim sanırım.
Önce $mail değişkenine kullanıcı post ettiği veriyi atamışsınız, sonra aynı değişken adı için $mail nesnesi tanımlamışsınız.
Bu değişkenin birinin adını değiştirin. Mesela kullanıcıdan post aldığınız kısımdaki $mail değişkeninin adını $email olarak değiştirin;
$email = $_POST['pass'];
-
Üyelik
20.03.2014
-
Yaş/Cinsiyet
28 / E
-
Meslek
Serbest Meslek
-
Konum
İstanbul Avrupa
-
Ad Soyad
Y** T**
-
Mesajlar
394
-
Beğeniler
74 / 25
-
Ticaret
1, (%100)
Valla hocam safi sorun, mesele ki sorun çıksın. Bu sefer de "beklenmedik kapanış" php nası kapanır ki ? ?> bu kadar.
Name - Nick - Pass ve password sorunu birbirine girdi iyice, diğer türlü de ayrıştırmıyo. En son şöyle bişey çıkardım farklı bir kaynaktan:
index.php:
PDO | REG
register.php:
$db = new PDO("mysql:host=localhost;dbname=mailactive;charset=utf8", "root", "");
$nick = $_POST['nick'];
$mail = $_POST['mail'];
$password = $_POST['password'];
if (!$nick || !$mail || !$password) {
die("Fill");
}
$add = $db->prepare("INSERT INTO members SET nick = ?, mail = ?, password = ?");
$add->execute([$nick, $mail, $password]);
if ($add) {
echo "Success";
}else {
echo "Error";
}
login.php:
$db = new PDO("mysql:host=localhost;dbname=mailactive;charset=utf8", "root", "");
$nick = $_POST['name'];
$password = $_POST['password'];
if (!$nick || !$nick){
die("failed");
}
$user = $db->prepare("SELECT * FROM members WHERE nick = '$nick' AND password = '$password'");
if ($user) {
var_dump($user);
}else {
echo "Failed";
}
Bu sefer de login de tıkandık :) Kayıtlı kullanıcıyı bulamıyo veya "name - nick" "password" uyarısı veriyo satırlardan
Hep daha ileriye!
-
Üyelik
01.02.2014
-
Yaş/Cinsiyet
36 / E
-
Meslek
Tekniker
-
Konum
Giresun
-
Ad Soyad
S** K**
-
Mesajlar
229
-
Beğeniler
76 / 75
-
Ticaret
1, (%100)
Sorgu kısmını şöyle deneyin;
$user = $db->prepare("SELECT * FROM members WHERE nick = \' $nick\' AND password =\ '$password\'");
-
Üyelik
01.02.2014
-
Yaş/Cinsiyet
36 / E
-
Meslek
Tekniker
-
Konum
Giresun
-
Ad Soyad
S** K**
-
Mesajlar
229
-
Beğeniler
76 / 75
-
Ticaret
1, (%100)
Oradaki tek tırnak içerisindeki değişkenler büyük ihtimalle doğrudan değişken adı olarak görünüyor. Değişken değeri olarak algılanmıyor.
-
Üyelik
20.03.2014
-
Yaş/Cinsiyet
28 / E
-
Meslek
Serbest Meslek
-
Konum
İstanbul Avrupa
-
Ad Soyad
Y** T**
-
Mesajlar
394
-
Beğeniler
74 / 25
-
Ticaret
1, (%100)
object(PDOStatement)#2 (1) { ["queryString"]=> string(65) "SELECT * FROM members WHERE name = \'123\' AND password =\ '123\'" }
Böyle bir uyarı verdi hocam. Anlatımda e-mail de gösteriyo bu uyarı içinde. Direkt sorun gibi değil ama algılamadı gibi pek.
Username olarak hepsine "name" atadım "password" için de keza fix "password" Password da önceki \'ı eşittir bitimine koymuşsunuz ona kadar dikkat ettim.
Hep daha ileriye!
-
Üyelik
01.02.2014
-
Yaş/Cinsiyet
36 / E
-
Meslek
Tekniker
-
Konum
Giresun
-
Ad Soyad
S** K**
-
Mesajlar
229
-
Beğeniler
76 / 75
-
Ticaret
1, (%100)
Tamam
$user = $db->prepare("SELECT * FROM members WHERE nick = '".$nick."' AND password = '".$password."'");
-
Üyelik
01.02.2014
-
Yaş/Cinsiyet
36 / E
-
Meslek
Tekniker
-
Konum
Giresun
-
Ad Soyad
S** K**
-
Mesajlar
229
-
Beğeniler
76 / 75
-
Ticaret
1, (%100)
Bu kez olmuş olması lazım.
-
Üyelik
20.03.2014
-
Yaş/Cinsiyet
28 / E
-
Meslek
Serbest Meslek
-
Konum
İstanbul Avrupa
-
Ad Soyad
Y** T**
-
Mesajlar
394
-
Beğeniler
74 / 25
-
Ticaret
1, (%100)
Tamamdır hocam, ama session ve welcome olayu bu sefer olmadı. Else çalıştırıyo sürekli
Hep daha ileriye!