I just tried to learn pdo
by few examples and it is not going well, I have too many questions where I cannot find any answers I need...
First with mysqli I had $con = mysqli_connect() or die();
and then when I need I use $con with mysqli_real_escape_string as first parameter
, when I Select from table, update
etc..
But here as I see on This tutorial and W3Schools tutorial, I need to do this:
$servername = "localhost";
$username = "root";
$password = "";
try{
$con = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
$con->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
}catch(PDOException $e){
$error = "Connection failed: " . $e->getMessage();
}
And under $con to add preparation for fetching data inserting etc.
Can I get it to use like with mysqli
somehow to have connect.php
file where I connect to db and then use $con
as variable where it is needed?
Also I do not understand what are those "::" here PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION
Here is the code I tried but without adding $con to class method insertUser I can't access it by including connection in other file. And when I do add it I do get success message but nothing is inserted into table.
include_once('./c.php');
$p0 = $_POST['p0'];
$p1 = $_POST['p1'];
$p2 = $_POST['p2'];
$p3 = $_POST['p3'];
$p4 = $_POST['p4'];
class newUser{
function insertUser($p1, $p2, $p3, $p4){
$pid = md5($p3);
$pw = md5($p4);
$servername = "localhost";
$username = "root";
$password = "";
$con = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
//I have this into my c.php into try{}catch(){} but I cannot access it...
$stmt = $con->prepare("INSERT INTO suu (nf, nl, me, wp, pin, rdate, ac)
VALUES (:firstname, :lastname, :email, :password, :profileid, now(), 0)");
$stmt->bindParam(':firstname', $p1);
$stmt->bindParam(':lastname', $p2);
$stmt->bindParam(':email', $p3);
$stmt->bindParam(':password', $pw);
$stmt->bindParam(':profileid', $pid);
$stmt->execute();
echo "registerSuccessfully.html"; //I get this message but table is empty
}
function checkData($p1, $p2, $p3, $p4){
if($p1!="" && $p1!=NULL && $p2!="" && $p2!=NULL && $p3!="" && $p3!=NULL && $p4!="" && $p4!=NULL){
return true;
}else return false;
}
}
if($p0=="reg"){
$newUser = new newUser($p1, $p2, $p3, $p4);
if($newUser->checkData($p1, $p2, $p3, $p4)){
try{
$newUser->insertUser($p1, $p2, $p3, $p4);
}catch(PDOException $e){
echo "Error: " . $e->getMessage();
}
}
}else{
}