За последние 24 часа нас посетили 22369 программистов и 1169 роботов. Сейчас ищут 710 программистов ...

Проблемы с mysqli

Тема в разделе "Вопросы от блондинок", создана пользователем Kreker, 24 авг 2007.

  1. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    В общем дома на локалхосте (php 5.0.5, mysql 5.0.15) писал сайт. С базой работал через mysqli.

    Код (Text):
    1. $mysqli = new Mysqli ($sqladdres, $sqluser, $sqlpwd, $sqlbase, $sqlport);
    2. $result = $mysqli->query("fvfvf")->fetch_array();
    Все у меня работало. Пришло время заливать сайт на хостинг. Но тут наткнулся на подводный камень - не соединяет с бд. Спросил в саппорте в чем дело, они сказали, что mysqli поддерживается. Коннект с базой есть через обычный mysql_connect.
    Выдает куча ошибок, начиная с соединения. Где-то нашел информацию, что:
    Код (Text):
    1. $mysqli = @ new Mysqli ($sqladd, $sqluser, $sqlpwd, $sqlbase, $sqlport);
    После этого с базой соединилось, но выдавало все равно множество ошибок (все одного типа - no fetch_array (даже на $mysqli->close();). В общем перед всеми объектами поставил знак @ - ошибки пропали, однако, страница пустая (я не обратил внимание на это, т.к база пустая).
    Пошел дальше, в модераторскую, подправил так же. Но там уже идет запрос на сверку логина/пароля. Тут я понял, что из mysql вообще ничего не выводится. Чего только не пробовал - не работает и все. Если убрать знак @ везде, то страница будет в ошибках, со знаком ничего не работает. Я знаю, что я ламер. Подскажите, в чем проблема?
     
  2. stas_t

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

    С нами с:
    24 апр 2007
    Сообщения:
    500
    Симпатии:
    0
    Адрес:
    Courbevoie, France
    ошибки раскомментарьте и вставьте проверку на соединение после собственно соединения. приведите оригинальное сообщение об ошибке. проверьте параметры подключения.

    p.s. (мысли вслух) народ, до чего же нас люди боятся, если в каждом втором запросе появляется "Я знаю, что я ламер. Подскажите, в чем проблема?". только ногами не бейте. мы такие страшные, да?
     
  3. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Я еще вчера был уверен на 90%, что будут проблемы с хостингом и сайтом в этом плане.

    Вот какую ошибку выдает скрипт, если перед каждым объектом @ и прописаны die
    На этой строке находится
    PHP:
    1. <?
    2. $rezult = @ $mysqli->query("SELECT `id` FROM `bb` WHERE `ip`='$ip2long' AND `kolvo`='5'") or die($mysqli->error);
    3. ?>
    Таблица пустая (на локалхосте все работает, только без @).

    Если без знаков @ (то есть та версия, которая работает у меня дома), то на хостинге выдает следующее


    PHP:
    1. <?
    2.  
    3. $mysqli = new Mysqli ($sqladd, $sqluser, $sqlpwd, $sqlbase, $sqlport);
    4. $mysqli->query("SET NAMES 'cp1251'");
    5. $result = $mysqli->query("SELECT `id` FROM `bb` WHERE `ip`='$ip2long' AND `kolvo`='5'")->fetch_array();
    6. ?>
    Если die около запросов нет, то должна вывестить форма, независимо от соединения с базой (если не произошло крит. ошибки) но её нет, как будто стоит die.
     
  4. stas_t

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

    С нами с:
    24 апр 2007
    Сообщения:
    500
    Симпатии:
    0
    Адрес:
    Courbevoie, France
    уважаемый, а вы уверены, что у вас есть рутовый доступ к базе хостера?
     
  5. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Да я ж поменял все на форуме и скрыл адреса реальные :) Аккаунт есть. mysql_connect работает.
     
  6. stas_t

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

    С нами с:
    24 апр 2007
    Сообщения:
    500
    Симпатии:
    0
    Адрес:
    Courbevoie, France
    если я правильно понимаю, то данное сообщение говорит о том, что вы пытаетесь зайти под рутом:
    я надеюсь, что вы не меняете сообщения об ошибках перед тем, как запостить их здесь...
     
  7. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Для форума я поменял адреса к файлам и информацию, относящуюся к бд (логины в том числе) в ошибках и коде. В ошибке мой логин, я его поменял на root.
     
  8. AlexGousev

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

    С нами с:
    25 мар 2006
    Сообщения:
    1.505
    Симпатии:
    0
    Адрес:
    Москва
    Kreker
    А вы не пробовали прочитать, почему у вас ничего не работает. Или читать сообщения об ошибках не путь истинных самураев?
     
  9. Kreker

    Kreker Старожил

    С нами с:
    8 апр 2007
    Сообщения:
    5.433
    Симпатии:
    0
    Если я написал, что я-ламер, это не значет, что я способен подключиться к хостеру через рут :)

    Ошибки читать умею, правда не очень внимательно. Обращаюсь на форум, когда уже потратил часов 5, обыскав инфу об ошибках.
    Вот моя и невнимательность подвела - когда копировал данные с хостера (они начинаются с пробелом), последняя строка - имя бд. Вот скопировал, да не обратил внимания (а когда обратил - поменял на локалхосте, а на сервак забыл залить, и проверял конфиг тоже на локале, отсюда и начал искать другие причины) При выводе на сайте ошибка переносилась так, что пробела не было видно.
    Невнимательность как всегда подвела, что на экзаменах помню подводила, что тут :)

    Всем спасибо за поддержку и гневную критику :) Целый день потерял из-за пустяка. Поэтому и ламер :)