Selam arkadaşlar, form üzerinden girdiğimiz verilerin veri tabanında olup olmadığını denetleyen bir PHP kodu nasıl yazabilirim? Kodları görüp mantığını anlamak istiyorum. Şimdiden teşekkür ederim.
Alttaki şekilde, sorgu yapıldıktan sonra etkilenen satır sayısı num_rows ile çekilir. Satır sayısı 0'dan büyükse aynı veri vardır demek oluyor.
MySQLi ile (önermem bu kodu);
PHP:
<?php
$db_con = new mysqli("localhost", "root", "", "test");
$result = $db_con->query("SELECT * FROM users WHERE id = '1'");
if($result->num_rows > 0) {
// değer var
} else {
// değer yok
}
$db_con->close();
?>
PDO ile;
PHP:
<?php
$con_db = new PDO('mysql:host=localhost;dbname=deneme', "root", "");
$sql_query = "SELECT * FROM users WHERE id = ?";
$result = $con_db->prepare($sql_query);
$result->execute([$id]);
$number_of_rows = $result->fetchColumn();
if ($number_of_rows > 0){
// değer var
}else{
// değer yok
}
?>
Alttaki şekilde, sorgu yapıldıktan sonra etkilenen satır sayısı num_rows ile çekilir. Satır sayısı 0'dan büyükse aynı veri vardır demek oluyor.
MySQLi ile (önermem bu kodu);
PHP:
<?php
$db_con = new mysqli("localhost", "root", "", "test");
$result = $db_con->query("SELECT * FROM users WHERE id = '1'");
if($result->num_rows > 0) {
// değer var
} else {
// değer yok
}
$db_con->close();
?>
PDO ile;
PHP:
<?php
$con_db = new PDO('mysql:host=localhost;dbname=deneme', "root", "");
$sql_query = "SELECT * FROM users WHERE id = ?";
$result = $con_db->prepare($sql_query);
$result->execute([$id]);
$number_of_rows = $result->fetchColumn();
if ($number_of_rows > 0){
// değer var
}else{
// değer yok
}
?>
Alttaki şekilde, sorgu yapıldıktan sonra etkilenen satır sayısı çekilir. Satır sayısı 0'dan büyükse aynı veri vardır demek oluyor.
PHP:
$mysqli = new mysqli("localhost", "root", "", "test_db");
$result = $mysqli->query("SELECT * FROM users WHERE id = '1'");
if($result->num_rows > 0) {
// değer var
}else{
// değer yok
}
$mysqli->close();
Kesinlikle ama kesinlikle PDO kullanımını öneriyorum. PDO Kullanımı – Tayfun Erbilen Burada sade bir şekilde anlatılıyor. id='değer' şeklinde yazılan her kod potansiyel SQL Injection riski bulundurur.
Alttaki şekilde, sorgu yapıldıktan sonra etkilenen satır sayısı num_rows ile çekilir. Satır sayısı 0'dan büyükse aynı veri vardır demek oluyor.
MySQL'i ile (önermem bu kodu);
PHP:
<?php
$db_con = new mysqli("localhost", "root", "", "test");
$result = $db_con->query("SELECT * FROM users WHERE id = '1'");
if($result->num_rows > 0) {
// değer var
} else {
// değer yok
}
$db_con->close();
?>
PDO ile;
PHP:
<?php
$con_db = new PDO('mysql:host=localhost;dbname=deneme', "root", "");
$sql_query = "SELECT * FROM users WHERE id = ?";
$result = $con_db->prepare($sql_query);
; $result->execute([$id]);
$number_of_rows = $result->fetchColumn();
if ($number_of_rows > 0){
// değer var
}else{
// değer yok
}
?>
$Db_con = New mysqli("localhost", "root", "", "test"); bu kod anladığım kadarıyla veri tabanına bağlanmanın farklı bir yolu normalde $db_con = mysqli_connect("","","",""); şeklinde bağlanıyordum bunun ne gibi bir farkı oluyor yoksa sadece farklı bir bağlama yönetemimi.
$Db_con = New mysqli("localhost", "root", "", "test"); bu kod anladığım kadarıyla veri tabanına bağlanmanın farklı bir yolu normalde $db_con = mysqli_connect("","","",""); şeklinde bağlanıyordum bunun ne gibi bir farkı oluyor yoksa sadece farklı bir bağlama yönetemimi.