<?php $dblocation = "localhost"; $dbname = "test01"; $dbuser = "root"; $dbpasswd = "130982"; @ $dbcnx = mysqli_connect($dblocation,$dbuser,$dbpasswd,$dbname); if (!$dbcnx) { echo( "<P>фак 1</P>" ); exit(); } if (! @mysqli_select_db($dbcnx,$dbname) ) { echo( "<P>фак 2</P>" ); exit(); } $query="select * from news"; $res=mysqli_query($dbcnx,$query); if ($res) { while($news = mysqli_fetch_array($res)) { echo $news[2].$num_r; echo $news['name']."<br><br>"; echo "<p>"; echo nl2br($news['body']); } } ?> Не могу понять, что тут не верно. Результат - пустые строки вместо значений столбцев таблицы. Таблицы в mysql созданны и забиты данными. Соединение с базой тоже есть. Всё происходит на локалхосте. МайСкл 5.0.6. PHP5.1 Апач 1.3 (ну не люблю я 2ой...) Дома на машине всё работает. На работе - нет. Конфиг файлы перебирал уже раз 10... Вот ломаю голову 2ой день...
p1zza, а mysqli_connect, mysqli_select_db, mysqli_query, mysqli_fetch_array Вам зачем? mysql_connect, mysql_select_db, mysql_query, mysql_fetch_array попробуйте, может. А php_mysqli.dll в php.ini раскоменчен?
в общем нашёл одиг глюк. или это не глюк... если вместо названия столбца прописать его номер в таблице, то значения выводит... то есть вместо echo $news['name']; прописать echo $news['1'];, то выводит нужное значение. как это можно исправить? чтобы определяло столбец таблицы по его названию, а не по индексу? хелп ме ))
спасибо. помогло вроде как. сейчас буду проверять дальше... а почему разница между mysqli_fetch_array и mysqli-fetch-assoc в данном случае? не,я то понимаю назначение этих функций, но не могу понять, на одном компе работает нормально, на другом, при такой же конфигурации - нет... спасибо за помощь.
По-моему, не у тебя одного был. Хотя зачем "напрягать" *_fetch_array и готовить как ассоциотивные, так и номерные массивы, если используешь только один вид? Зачем были введены MYSQLI_ASSOC, MYSQLI_NUM?