За последние 24 часа нас посетил 17581 программист и 1716 роботов. Сейчас ищут 1849 программистов ...

MySQL заменяет массив

Тема в разделе "MySQL", создана пользователем mice, 3 дек 2009.

  1. mice

    mice Активный пользователь

    С нами с:
    3 дек 2009
    Сообщения:
    8
    Симпатии:
    0
    Может вопрос и глупый для таких гуру, но все же:

    Есть массив с пользователями:
    PHP:
    1.      /* users.php | Users Database */
    2. $users = array(
    3. // array("login","md5 hash of password","name","birthsday","job","bio","location","avatar.img")
    4. array("mice32","21232f297a57a5a743894a0e4a801fc3","Володя","29.03.1985","Работа","Биография","Russian Federation -> Saint-Petersburg","foto_13.gif"),
    5. array("aves","d977907c4164da3ec17538d3c45375ee","Алексей","?","CS Player","Некий текст, который вытащили из массива","Russian Federation -> Saint-Petersburg","lines.gif"),
    6. array("Jean-Damien","21232f297a57a5a743894a0e4a801fc3","","","pChart Developer","","","31b2fa076e09144f54bc11398cff04eb.jpeg")
    7. );
    Я хочу заменить его на таблицу SQL - теоретически это возможно - двумерный массив, как таблица...

    Ну вот, я подключаюсь:
    PHP:
    1.     /* users-stillBad.php | MySQL variant of users.php */
    2. require_once("../errproc.php"); // Error processor
    3.  
    4. // Database Settings
    5. $database = array(
    6.     "server" => "127.0.0.1",
    7.     "user" =>   "pchartWiki",
    8.     "password" =>   "root"
    9. );
    10.  
    11. // Connect to database
    12. $myConnect = mysql_connect($database["server"],$database["user"],$database["password"]);
    13. if(!$myConnect) mySQLError();
    14. mysql_select_db("users" ,$myConnect);
    15.  
    16. // Getting data
    17. $myData = mysql_query("SELECT * FROM username" ,$myConnect);
    18.  
    19. $tablerows = mysql_fetch_row($myData) // <- тут ругается
    20.  
    21. // ...
    22.  
    23. // Close connection to MySQL
    24. $myClose = mysql_close($myConnect);
    Как только я пытаюсь разобрать эту $myData-кучу с использованием mysql_fetch_row() я получаю ответ:

    Код (Text):
    1. Warning: mysql_fetch_row(): supplied argument is not a valid MySQL result resource in Z:\home\www.redirect.org\www\users\users-stillBad.php on line 21
    Что нетак?

    ------------------
    прим: функция mySQLError() из ../errproc.php только пишет ошибки подключения SQL в лог-файл.
     
  2. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    в 17 строке замени ; на

    or die ( mysql_error( $myConnect ) );

    и читай, что именно не нравится базе в твоем запросе.
     
  3. mice

    mice Активный пользователь

    С нами с:
    3 дек 2009
    Сообщения:
    8
    Симпатии:
    0
    Запустив принудительно mySQLError() после объявления $myData я получил в логе:
    Код (Text):
    1. 2009.12.04 00:13:21 MYSQL ERROR #1046   No database selected
    По вышесказанному совету, скрипт выдал:
    Код (Text):
    1. No database selected
    У моей БД структура:
     
  4. Simpliest

    Simpliest Активный пользователь

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Английский понимаем?
     
  5. mice

    mice Активный пользователь

    С нами с:
    3 дек 2009
    Сообщения:
    8
    Симпатии:
    0
    самое интересное - что я выбрал БД:
    читаем:

    PHP:
    1. mysql_select_db("users" ,$myConnect);
     
  6. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Так и база, и таблица называются users?
     
  7. DarkElf

    DarkElf Активный пользователь

    С нами с:
    22 окт 2006
    Сообщения:
    1.632
    Симпатии:
    0
    см. http://www.php.ru/forum/viewtopic.php?p=191261#191261
    добавь аналог для строки 14.


    [OFFTOP]
    еще один плюс mysqli: если ему не удалось выбрать базу - все падает еще на этапе соединения)))
    [/OFFTOP]
     
  8. mice

    mice Активный пользователь

    С нами с:
    3 дек 2009
    Сообщения:
    8
    Симпатии:
    0
    Ну, я и баран! Я пытаюсь подключиться к таблице :D вот, и ничего не идет... Только сейчас доперло...
     
  9. mice

    mice Активный пользователь

    С нами с:
    3 дек 2009
    Сообщения:
    8
    Симпатии:
    0
    Как только, я понял ошибку, сразу все пошло, и теперь все юзеры у меня не в статичном массиве а в SQL. Kreker своим вопросом очень помог, спасибо.