<?php
$hostname = "localhost";
$username = "ODBC";
$password = "";
$dbname = "db_students";
try{
$dbh = new PDO("mysql:host=$hostname;dbname=$dbname",$username,$password);
echo"Connected to database"."<br/>";
$dbh->setAttribute(PDO::ATTR_ERRMODE,PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare("DELETE FROM enrolments
WHERE student_name = :name");
$stmt->bindParam(":name",$name,PDO::PARAM_STR,255);
$name = "Pietie Kock";
$stmt->execute();
if($student_name > 0)
{
echo "record deleted ". $student_name;
}else{
echo "record doesn't exist". $student_name;
$dbh = null;
}catch(PDOException $e){
echo $e->getMessage();
}
?>
Asked
Active
Viewed 40 times
-4

Saty
- 22,443
- 7
- 33
- 51

Sizwe Pellicant
- 53
- 5
-
You should add a least a question, and some of your problem description. – blue112 Apr 20 '16 at 09:49
-
1its format now and i will do that next time i upload a question – Sizwe Pellicant Apr 20 '16 at 09:54
1 Answers
0
$student_name
is undefined in your code To check the number of rows affected by the last SQL statement we use rowCount()
$stmt->execute();
if ($stmt->rowCount > 0) {
echo "record deleted " . $student_name;
} else {
echo "record doesn't exist" . $student_name;
$dbh = null;
}
You also forget to close try
Your code would be
try {
$dbh = new PDO("mysql:host=$hostname;dbname=$dbname", $username, $password);
echo"Connected to database" . "<br/>";
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$stmt = $dbh->prepare("DELETE FROM enrolments
WHERE student_name = :name");
$stmt->bindParam(":name", $name, PDO::PARAM_STR, 255);
$name = "Pietie Kock";
$stmt->execute();
if ($stmt->rowCount > 0) {
echo "record deleted " . $student_name;
} else {
echo "record doesn't exist" . $student_name;
$dbh = null;
}
} catch (PDOException $e) {// close you try
echo $e->getMessage();
}

Saty
- 22,443
- 7
- 33
- 51