начиная с MySQL на PHP-сервере Ubuntu - PullRequest
0 голосов
/ 22 января 2012

Я новичок в MySQL, но недавно попытался сделать несколько уроков, чтобы улучшить свои знания. В любом случае я установил mysql на свой сервер Ubuntu, а также phpmyadmin. Кажется, что они оба работают отлично, я создал базу данных в phpmyadmin под названием «test», а также таблицу под названием «teddy». Я положил данные в таблицу, и я могу ясно видеть это через phpmyadmin.

Теперь, когда я пытаюсь получить доступ к этой базе данных через php-скрипт на моем сервере Ubuntu, ничего не происходит. Буквально ничего. Он реагирует так же, как если бы у меня была синтаксическая ошибка (быстрая загрузка без отображения информации).

Это мой код ... Если кто-нибудь знает, где моя ошибка, это будет высоко ценится.

Спасибо

 <?php

   $username='root';
    $password='***';
    $database='test';


   @$db= mysqli_connect('localhost', $username, $password, $database);

if (mysqli_connect_errno())
{
echo 'Error: Could not connect';
exit;

 }

 $query= "select * from test";

$result= $db->query($query);

$num_results= $result->num_rows;

echo $num_results;


  ?>

отредактировано (по данным Дрю 010)

Проблема заключалась в том, что таблица не называлась тестовой, а была тедди, поэтому вставка этого кода работала. "SELECT * FROM 'teddy'";

$db= new mysqli('localhost', $username, $password, $database);

 if (mysqli_connect_errno())
 {
echo 'Error: Could not connect';
exit;

 }

 $query = "SELECT * FROM 'teddy'";

  $result = $db->query($query);
 if ($result) {
  $num_results = $result->num_rows;

  echo $num_results;
    } else {
  echo "Query failed: {$db->error}\n";
   }


  ?>

Ответы [ 3 ]

2 голосов
/ 22 января 2012

$result= $db->query($query); вероятно возвращает false по какой-то причине.

Попробуйте:

$query = "select * from teddy";

$result = $db->query($query);
if ($result) {
    $num_results = $result->num_rows;

    echo $num_results;
} else {
    echo "Query failed: {$db->error}\n";
}

См. http://www.php.net/manual/en/mysqli.query.php#refsect1-mysqli.query-returnvalues

0 голосов
/ 22 января 2012
@$db= mysqli_connect('localhost', $username, $password, $database);

должно быть

$db= new mysqli('localhost', $username, $password, $database);
0 голосов
/ 22 января 2012

Я не использую mysql, но думаю, потому что вы используете mysqli_connect.Попробуйте использовать mysql_connect

<?php
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password');
if (!$link) {
    die('Could not connect: ' . mysql_error());
}
echo 'Connected successfully';
mysql_close($link);
?>

http://php.net/manual/en/function.mysql-connect.php

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...