AESB wrote:
Hope you are all happy and doing well!
I've chosen a piece of chunk of code from a movie browser script known
as mysqli_query and mysqli-fetch-array for testing. It's possble a
reason preventing it's execution. See any bugs in the following
I'm using APACHE 2.2, PHP 5.2.6 and MySQL 5.1
<?php
// ***** browse_movies.php *****
// Connect to MySQL and select the database:
$dbc = mysqli_connect('localhost', 'xxxx', 'xxxxxxxx','movies') or die
('Could not connect to MySQL: ' . mysqli_connect_error());
// Define the query:
$q = "SELECT first_name, last_name FROM directors";
// Run the query:
$r = mysqli_query($dbc, $q)or die("Error: ".mysqli_error($dbc));
// Display all of the records:
while ($row = mysqli_fetch_array($r, MYSQLI_ASSOC)) {
echo "{$row['first_name']} <i>{$row['last_name']}</i><br />\n";
}
// Clean up:
mysqli_free_result ($r);
mysqli_close($dbc);
?>
I see a few problems.
Try this as a replacement and see what you get. It is all the code you gave, just re factored a little.
<?php
// ***** browse_movies.php *****
// Connect to MySQL and select the database:
$host = 'localhost';
$user = 'xxxx';
$pass = 'xxxxxxxx';
$db = 'movies';
$dbc = new mysqli($host, $user, $pass, $db);
# returns this: http://us.php.net/manual/en/class.mysqli.php
# You need to make sure that the db connection was successful.
# Your code assumed the connection always worked.
if ( mysqli_connect_errno() ) {
die('Connection Error: ' . mysqli_connect_error());
}
// Define the query:
$q = "SELECT first_name, last_name FROM directors";
// Run the query:
# You need to make sure that the SELECT query was successful.
# Your code assumed that you would always get a result, hence it would never fail...
if ( $results = $dbc->query($q) ) {
# returns this: http://us.php.net/manual/en/class.mysqli-result.php
# Check to make sure you actually got something back.
if ( $results->num_rows ) {
// Display all of the records:
while ( $row = $results->fetch_assoc() ) {
echo "{$row['first_name']} <i>{$row['last_name']}</i><br />\n";
}
} else {
echo 'No movies to browse.';
}
$results->close();
} else {
die("Query Error: ".$dbc->error . " Q={$q}");
}
$dbc->close();
?>
I have never used mysqli_* before, so I'm not sure if this is going to do what I think it is, but it
should start you down the road to recovery... :)
--
Jim Lucas
"Some men are born to greatness, some achieve greatness,
and some have greatness thrust upon them."
Twelfth Night, Act II, Scene V
by William Shakespeare
--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php