alexwaston |
09-28-2016 08:55 PM |
Mysqli call to mysql db routine not working
Hi, can someone help!
I'm new to php and mysql and making good progress. But I am stumped with a call to a mysql stored proc/routine.
It runs prefectly well in mysql reutrning just the number of rows in a table.
But I cannot get it to work in PHP. I have even stripped out all the IN to avoid any confusion. Here my routine SQL Code
PHP Code:
DROP PROCEDURE `TestUserWeeklyAppts`; CREATE DEFINER=`xxxx`@`%` PROCEDURE `TestUserWeeklyAppts`(OUT `rows` INT) NOT DETERMINISTIC NO SQL SQL SECURITY DEFINER BEGIN DECLARE StartDate DATE; DECLARE EndDate DATE; DECLARE StaffID INT; SET StaffID = 4; SET StartDate = '2016-09-11'; SET EndDate = DATE_ADD(StartDate ,INTERVAL 7 DAY); SELECT COUNT(ID) INTO rows FROM TblAppointments WHERE StaffID = StaffID AND ApptDate BETWEEN StartDate AND EndDate; END
THis just returns the number 22 everytine!
Here my PHP code
PHP Code:
$mysqli = new mysqli($servername, $dbusername, $dbpassword); mysqli_select_db($mysqli, $database); if ($mysqli->connect_error) { die("Connection failed: " . $conn->connect_error); } $stmt = $mysqli->prepare('CALL TestUserWeeklyAppts(@rows)'); $stmt->execute(); $select = $mysqli->query('SELECT @rows'); $result = $select->fetch_array(); print_r($result['Rows']); if (!select) { echo "false"; } else { echo "True".""; // output data of each row while($row = mysql_fetch_array($result)){ print_r($row); } echo "Number of Select rows: ". $select->num_rows .""; echo "Number of Result Rows: ". $result->num_rows .""; } $stmt->close();
So if anyone can explain where Im going wrong it woulbe be appreciated...
kind regards
Relax: the chainsmokers closer lyrics | rihanna work lyrics | cold water lyrics . Good fun!
|