2013-12-11 4 views
-2

вот мой кодMySQL запросов не работает, но нет никакой ошибки

<?php 
    $con=mysqli_connect("localhost","boursdfdswmat","PfdXfdsfkd"); 
    mysqli_select_db("dbanme",$con); 
    // Check connection 
    if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 
    else {echo "connected";} 

    $qry=mysqli_query("SELECT `title`, `created_date`, `user_id` FROM `invoices` WHERE `user_id` = 123 ORDER BY created_date DESC LIMIT 0 , 1"); 
    echo $res1=mysqli_num_rows($qry); 
    $result=mysqli_fetch_array($qry); 
    echo $result['0']; 
    ///echo "hi"; 
    ?> 

, что не так с этим кодом. Я не получаю никаких результатов с этими запросами. пожалуйста помогите. спасибо

+0

, что '$ res1' печать? –

+0

добавить эти строки, error_reporting (E_ALL); \t \t ini_set ('display_errors', 1); и посмотреть, что произойдет. – Andrew

+0

@SureshKamrushi ничего .. только вне класть с этим скриптом «подключен» – shfkktm

ответ

2

две ошибки в коде: недопустимое использование mysqli_select_db и недопустимое использование mysqli_query для * mysqli_select_db *: параметры являются ошибочными и * mysqli_query *: соединение пропущено.

изменения вы код:

<?php 
    $con=mysqli_connect("localhost","boursdfdswmat","PfdXfdsfkd"); 
    mysqli_select_db($con,"ghese_new"); 
    // Check connection 
    if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 
    else {echo "connected";} 

    $qry=mysqli_query($con,"SELECT `title`, `created_date`, `user_id` FROM `invoices` WHERE `user_id` = 123 ORDER BY created_date DESC LIMIT 0 , 1"); 
    echo $res1=mysqli_num_rows($qry); 
    $result=mysqli_fetch_array($qry); 
    echo $result['1']; 
    ///echo "hi"; 
    ?> 
+0

Он также может (как рекомендовано в документах) выбрать базу данных в вызове mysqli_connect вместо вызова mysqli_select_db после этого. – Jite

+0

thankz сейчас работает – shfkktm

0

Похоже, вы взяли старые устаревшие функции mysql_ * и заменили их на mysqli, это не всегда работает.
Большинство процедурных вызовов Mysqli требуют $ ссылку параметров (подключение), как:

mysqli_query($connection, $query); 

или: mysqli_error ($ связи);

Я не думаю, что есть функция mysqli_connect_errno(), я могу по крайней мере не найти ее в документации (но, возможно, я ошибаюсь, пожалуйста, исправьте меня, если да).
Существует переменная tho $mysqli->connect_errno, но она должна быть вызвана вашей переменной $con. Но вы используете процедурную версию mysqli, поэтому вы можете просто использовать вызов mysqli_error($con);.

Вы также выбираете db в вызове mysqli_select_db. Это на самом деле не так, но его рекомендуется выбрать базу данных в вызове соединения:

$con=mysqli_connect("localhost","boursdfdswmat","PfdXfdsfkd", "dbname"); 

Проверьте документы: http://www.php.net/manual/en/book.mysqli.php для получения дополнительной информации.

+0

, пожалуйста, посмотрите мой код. нет такой ошибки – shfkktm

+0

Код был отредактирован, чтобы не иметь такой ошибки после моего сообщения. Я отредактирую свой пост несколькими новыми указателями. – Jite

+0

извините за это ... – shfkktm

1

Базовый метод отладки, который вы хотите сделать здесь, это определить, есть ли у вас ошибка в строке запроса или вы действительно подключились к базе данных. Попробуйте добавить mysql_error() на свой код, как,

$con=mysqli_connect("localhost","bouwmat","PXk(0")or die(mysql_error()); 
mysqli_select_db("bouwmat_jos1",$con) or die(mysql_error()); 

$qry=mysqli_query("SELECT `title`, `created_date`, `user_id` FROM `jos_listbingo_cart_cart_invoices` WHERE `user_id` = 896 ORDER BY created_date DESC LIMIT 0 , 1")or die(mysql_error()); 
+0

'mysqli_error ($ con)', mysql_error устарел, не думайте, что он вызовет какую-либо ошибку из mysqli (altho, я могу ошибаться во втором выражении). – Jite

0
<?php 
    $con=mysqli_connect("localhost","boursdfdswmat","PfdXfdsfkd","dbanme"); 
    // Check connection 
    if (mysqli_connect_errno()) 
    { 
    echo "Failed to connect to MySQL: " . mysqli_connect_error(); 
    } 
    else {echo "connected";} 
    $qry=mysqli_query($con,"SELECT `title`, `created_date`, `user_id` FROM `invoices` WHERE `user_id` = 123 ORDER BY created_date DESC LIMIT 0 , 1"); 
    echo $res1=mysqli_num_rows($qry); 
    $result=mysqli_fetch_array($qry); 
    echo $result['0']; 
?> 

Попробуйте этот код, mysqli_connect непосредственно принимает базу данных и запрос нужен объект соединения

Смежные вопросы