За последние 24 часа нас посетили 15638 программистов и 1559 роботов. Сейчас ищут 870 программистов ...

php5 > php7 не могу подключиться к базе

Тема в разделе "PHP и базы данных", создана пользователем Andrey1985, 25 апр 2016.

  1. Andrey1985

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

    С нами с:
    25 апр 2016
    Сообщения:
    52
    Симпатии:
    0
    Всем привет, нужна помощь
    Переехал на php7
    Теперь не работают запросы
    это в самой странице :

    Код (Text):
    1.  
    2. <?php
    3. include ("blocks/bd.php"); /*Соединяемся с базой*/
    4. $result = mysql_query("SELECT * FROM text WHERE id='1'",$db);
    5. $myrow = mysql_fetch_array($result);
    6. ?>
    а это в файле соединения с БД
    Код (Text):
    1. <?
    2. $db = mysql_connect ("localhost","jimmi","****");
    3. mysql_select_db("jimmi",$db);
    4. ?>
    в таком виде на php 5.5 работает
    на php7 не хочет , поэтому привел к виду


    Код (Text):
    1. <?php
    2. include ("blocks/bd.php"); /*Соединяемся с базой*/
    3. $result = mysqli_query("SELECT * FROM text WHERE id='1'",$db);
    4. $myrow = mysqli_fetch_array($result);
    5. ?>
    а это в файле соединения с БД
    Код (Text):
    1. <?
    2. $db = mysqli_connect("localhost","jimmi","****","jimmi");
    3. ?>
    Но данные страницы не подгружаються

    Вот кусок самого кода страницы в нем видно что должно грузиться

    Код (Text):
    1. <?php
    2. include ("blocks/bd.php"); /*Соединяемся с базой*/
    3. $result = mysqli_query("SELECT * FROM text WHERE id='1'",$db);
    4. $myrow = mysqli_fetch_array($result);
    5. ?>
    6.  
    7. <!DOCTYPE html>
    8. <html>
    9.  
    10.     <head>
    11. <meta charset="utf-8"/>
    12.         <title><?php echo $myrow['title']; ?></title>
    13.         <meta name="Description" content="<?php echo $myrow['meta_d']; ?> " />
    14.         <meta name="Keywords" content="<?php echo $myrow['meta_k']; ?> " />
    15.         <meta name="viewport" content="width=device-width, minimum-scale=1.0" />
    16. <script>document.cookie='resolution='+Math.max(screen.width,screen.height)+'; path=/';</script>
    17. <link href="style/style.css" rel="stylesheet" type="text/css">
    18.      
    19.     </head>
     
  2. p@R@dox 55RU

    p@R@dox 55RU Зэк
    [ БАН ]

    С нами с:
    21 май 2014
    Сообщения:
    1.358
    Симпатии:
    7
    Адрес:
    с планеты Ялмез
    переходи на mysqli или PDO ((( :
     
  3. Andrey1985

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

    С нами с:
    25 апр 2016
    Сообщения:
    52
    Симпатии:
    0
    Так там-же вроде я указал эти запросы после редакции кода, как переходить ?
     
  4. p@R@dox 55RU

    p@R@dox 55RU Зэк
    [ БАН ]

    С нами с:
    21 май 2014
    Сообщения:
    1.358
    Симпатии:
    7
    Адрес:
    с планеты Ялмез
    ошибки выводятся? (( :
     
  5. Andrey1985

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

    С нами с:
    25 апр 2016
    Сообщения:
    52
    Симпатии:
    0
    нет, просто метатеги в страницу не встраиваються (они из бд идут)

    Например <title></title>
     
  6. zahermaher

    zahermaher Новичок

    С нами с:
    27 сен 2014
    Сообщения:
    169
    Симпатии:
    14
    в mysqli_query ,как я помню параметры меняются местами,как то так:
    PHP:
    1. $result = mysqli_query($db,"SELECT * FROM text WHERE id='1'");
    и еще попробуй вернуть mysqli_select_db , там вроде тоже параметры меняются местами
     
    Andrey1985 нравится это.
  7. Andrey1985

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

    С нами с:
    25 апр 2016
    Сообщения:
    52
    Симпатии:
    0
    Спасибо заработало, буду тестить, думаю еще косяки будут где-то
    поставил просто вот так
    Код (Text):
    1. $result = mysqli_query($db,"SELECT * FROM text WHERE id='1'");
    вместо

    Код (Text):
    1. $result = mysqli_query("SELECT * FROM text WHERE id='1'",$db);
    Это что зависит от того где поставить $db ? , странно
     
  8. zahermaher

    zahermaher Новичок

    С нами с:
    27 сен 2014
    Сообщения:
    169
    Симпатии:
    14
    Читай документацию по функциям mysqli_ ,там все написано
     
  9. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    да
     
  10. Andrey1985

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

    С нами с:
    25 апр 2016
    Сообщения:
    52
    Симпатии:
    0
    как можно проверить весь сайт на валидность php7
    хочу локально проверить
     
  11. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    синтаксис файлов можно проверить консольной версией пхп. там есть опция проверки файлов.
    а другие тонкости - это уже надо юниттесты гонять.
     
  12. Andrey1985

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

    С нами с:
    25 апр 2016
    Сообщения:
    52
    Симпатии:
    0
    как можно проверить синтаксис фалов подскажи как, если что то я на ubuntu
     
  13. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    тебе серьезно было быстрее набить вопрос на форуме нежели спросить у гугла? флаг -l.
    и ты это мог спросить у самой консольной версии пхп. флаги -h, -? и тому подобное - у очень большого числа программ вызывают демонстрацию вариантов использования.
     
    Andrey1985 нравится это.
  14. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    @Andrey1985 в документации не получилось найти?
     
  15. Zuldek

    Zuldek Старожил

    С нами с:
    13 май 2014
    Сообщения:
    2.381
    Симпатии:
    344
    Адрес:
    Лондон, Тисовая улица, дом 4, чулан под лестницей
    Насколько помню, автоматический перевод там не на 100% все может поправить. Поэтому, в данном случае, когда речь идет скорее всего не о гигантском проекте, лучше, а главное полезнее будет перебрать всё руками и поправить. документация в том числе по синтаксису mysqli из пыха есть.
     
  16. Andrey1985

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

    С нами с:
    25 апр 2016
    Сообщения:
    52
    Симпатии:
    0
    так я так и проверял
    Код (Text):
    1. php -l  /home/jimmi/www/blog.com.dev/forum/index.php
    2. No syntax errors detected in /home/jimmi/www/blog.com.dev/forum/index.php
    Это походу проверяет на наличее правильности скобок, точек и запятых
    А я имею ввиду проверку функций и соответстию их новым функциям php7, код то писался ещё под php5
    или php -l проверяет на неактивные или устаревшие функции
    --- Добавлено ---
    ручками поправил где мог
    Просто лопатить движек форума как-то сташновато, все вроде работает и не гадит ошибками в браузере, но могут быть косяки которые нескоро обнаружаться

    php -l не видит например ошибок в

    $result = mysql_query("SELECT * FROM text WHERE id='1'",$db);
    $myrow = mysql_fetch_array($result);
     
  17. Ganzal

    Ganzal Суперстар
    Команда форума Модератор

    С нами с:
    15 мар 2007
    Сообщения:
    9.893
    Симпатии:
    965
    линт смотрит синтаксис. если он верен - ошибок не будет.
    ошибки времени исполнения линт не смотрит. для этого надо - очевидно же - исполнять код. то есть в покрыть его юниттестами.
    удаленное расширение mysql (об удалении которого писали последние лет пять и только ленивый не перешел на mysqli или PDO) к синтаксису не относится, поэтому линт не видит в нем проблем.
    ну и как бы перед переездом с версии на версию - неплохо миграционные гиды почитать, да кодик локально готовить. а то переехал - отвалилось - побежал за помощью на форум.
     
  18. Zuldek

    Zuldek Старожил

    С нами с:
    13 май 2014
    Сообщения:
    2.381
    Симпатии:
    344
    Адрес:
    Лондон, Тисовая улица, дом 4, чулан под лестницей
    Дк а чего там страшиться то. Модели ведь только правите, с остальным нет проблем, как понимаю.
     
  19. Andrey1985

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

    С нами с:
    25 апр 2016
    Сообщения:
    52
    Симпатии:
    0
    да mysql поправил, без правок были читсые бланки в браузере,
    И все походу работает, просто покак как-то сцыкотно заливать на хостинг
    Боюсь что там не будет форум пахать, там стоит php5.5
    На локальной машине php7
    могу конечно повысить до 7 на хостинге
     
  20. denis01

    denis01 Суперстар
    Команда форума Модератор

    С нами с:
    9 дек 2014
    Сообщения:
    12.227
    Симпатии:
    1.714
    Адрес:
    Молдова, г.Кишинёв
    надо включить отображение ошибок или запись ошибок в log, тогда можно отладкой заняться