За последние 24 часа нас посетили 15768 программистов и 1666 роботов. Сейчас ищут 822 программиста ...

Не создается таблица данных

Тема в разделе "PHP для новичков", создана пользователем Samir, 14 фев 2018.

  1. Samir

    Samir Новичок

    С нами с:
    12 янв 2018
    Сообщения:
    48
    Симпатии:
    1
    Ребят, кто знает почему не работает программа:

    PHP:
    1. <!DOCTYPE html>
    2.  
    3. <html>
    4.  
    5. <head>
    6.  
    7. <title>Setting my database</title>
    8.  
    9. </head>
    10.  
    11. <body>
    12.  
    13. <h3>Setting up...</h3> // Setting...
    14.  
    15. <?php
    16.  
    17. require_once 'functions_mywebsite.php';
    18.  
    19. createTable('members',
    20.  
    21. 'user VARCHAR(16),
    22.  
    23. pass VARCHAR(16))
    24.  
    25. createTable('messages',
    26.  
    27. 'id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    28.  
    29. auth VARCHAR(16),
    30.  
    31. recip VARCHAR(16),
    32.  
    33. pm CHAR(1),
    34.  
    35. time INT UNSIGNED,
    36.  
    37. message VARCHAR(4096),
    38.  
    39. INDEX(auth(6)),
    40.  
    41. INDEX(recip(6))');
    42.  
    43. createTable('friends',
    44.  
    45. 'user VARCHAR(16),
    46.  
    47. friend VARCHAR(16),
    48.  
    49. INDEX(user(6)),
    50.  
    51. INDEX(friend(6))');
    52.  
    53. createTable('profiles',
    54.  
    55. 'user VARCHAR(16),
    56.  
    57. text VARCHAR(4096),
    58.  
    59. INDEX(user(6))');
    60.  
    61. ?>
    62.  
    63. <br>...done. // ... завершена.
    64.  
    65. </body>
    66.  
    67. </html >
    Выдает ошибку:
    ( ! )Parse error: syntax error, unexpected 'messages' (T_STRING) in C:\wamp64\www\setup_mywebsite.php on line13
     
  2. alexblack

    alexblack Старожил

    С нами с:
    20 янв 2016
    Сообщения:
    640
    Симпатии:
    381
    Предположительно 23 строка
     
  3. Samir

    Samir Новичок

    С нами с:
    12 янв 2018
    Сообщения:
    48
    Симпатии:
    1
    Прошу прощения не тот код прислал, вот правильный, именно в нем ошибка!

    PHP:
    1. <!DOCTYPE html>
    2. <html>
    3. <head>
    4. <title>Setting my database</title>
    5. </head>
    6. <body>
    7. <h3>Setting up...</h3> // Setting...
    8. <?php
    9. require_once 'functions_mywebsite.php';
    10. createTable('members',
    11. 'user VARCHAR(16),
    12. pass VARCHAR(16),
    13. INDEX(user(6))');
    14. createTable('messages',
    15. 'id INT UNSIGNED AUTO_INCREMENT PRIMARY KEY,
    16. auth VARCHAR(16),
    17. recip VARCHAR(16),
    18. pm CHAR(1),
    19. time INT UNSIGNED,
    20. message VARCHAR(4096),
    21. INDEX(auth(6)),
    22. INDEX(recip(6))');
    23. createTable('friends',
    24. 'user VARCHAR(16),
    25. friend VARCHAR(16),
    26. INDEX(user(6)),
    27. INDEX(friend(6))');
    28. createTable('profiles',
    29. 'user VARCHAR(16),
    30. text VARCHAR(4096),
    31. INDEX(user(6))');
    32. ?>
    33. <br>...done. // ... завершена.
    34. </body>
    35. </html >
     
  4. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    не знаю, что у вас там за функция createTable
    но подозреваю что там нужно передавать строку... так и сделайте строку - а не невесть что
    PHP:
    1. createTable("'members',
    2. 'user' VARCHAR(16),
    3. `pass' VARCHAR(16),
    4. INDEX(user(6))");
    в любом случае - нужно смотреть код этой самой функции чтоб понять чего она хочет...
     
    #4 ADSoft, 15 фев 2018
    Последнее редактирование: 15 фев 2018
  5. Samir

    Samir Новичок

    С нами с:
    12 янв 2018
    Сообщения:
    48
    Симпатии:
    1
    функция createTable создает таблицу, я так понимаю это стандартная функция.
    --- Добавлено ---
    попробовал как вы, все равно ошибка
    Screenshot_2.png
     
    denis01 нравится это.
  6. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    далеко не стандартная функция - в том то и дело
    найдите ее и покажите нам
     
  7. Samir

    Samir Новичок

    С нами с:
    12 янв 2018
    Сообщения:
    48
    Симпатии:
    1
    Да, вы были совершенно правы насчет функции: она действительно есть, почему то забыл про нее, вот она

    PHP:
    1.  function createTable($name, $query) // create a table if there is not one
    2.    {
    3.        queryMysql("CREATE TABLE IF MOT EXISTS $name($query)");
    4.        echo "The table '$name' created or were existed <br>"; //type that table has been created
    5.    }
     
  8. ADSoft

    ADSoft Старожил

    С нами с:
    12 мар 2007
    Сообщения:
    3.866
    Симпатии:
    753
    Адрес:
    Татарстан
    ну - queryMysql тоже какаая то нестандартная функция,
    но даже ту уж видно ошибку в синтаксисе SQL - IF MOT ... что за МОТ? - IF NOT должно бть
     
  9. Samir

    Samir Новичок

    С нами с:
    12 янв 2018
    Сообщения:
    48
    Симпатии:
    1
    Эту ошибку уже давно устранил
    --- Добавлено ---
    не в этом дело было
    но все равно спасибо)