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

помогите новичку

Тема в разделе "PHP для новичков", создана пользователем sam, 28 окт 2009.

  1. sam

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

    С нами с:
    22 окт 2009
    Сообщения:
    45
    Симпатии:
    0
    Пишу гостевую с учебника -(php 5 вподлиннике)

    Первая страница открывается нормально , после того как заполню формы и нажимаю добавить- выскакивает 2 ошибки

    Warning: require_once(model.php) [function.require-once]: failed to open stream: No such file or directory in C:\Program Files\Apache Group\Apache2\htdocs\test\controller.php on line 3

    Fatal error: require_once() [function.require]: Failed opening required 'model.php' (include_path='.;C:\php5\pear') in C:\Program Files\Apache Group\Apache2\htdocs\test\controller.php on line 3


    в чем проблема?

    view.htm
    -----------------
    <!--MVC.Шаблон гостевой книги.-->
    <html><head><title>Gostevaya kniga</title></head>
    <body>
    <h2>Добавте свое сообщение:<h2>
    <form action="controller.php" method="post">
    Ваше имя:<input type=text name="new[name]"><BR>
    Коментарий<br>
    <textarea name="new[text]" cols="60" rows="5"></textarea><br>
    <input type="submit" name="doAdd" value="Добавить">
    </form>
    <h2>Гостевая книга:</h2>
    <?foreach ($Book as $id=>$e) {?>
    Имя человека: <?=$e['name']?><br>
    Его комент: <br> <?=n12br($e['text'])?><hr>
    <?}?>
    </body></html>


    controller.php
    -------------------
    <?php define("GBook", "gbook.dat"); //имя файла с данными гостевой книги
    require_once "model.php";
    $Book = LoadBook(GBook);
    if(!empty($_REQUEST['doAdd'])) {
    $Book = array(time() => $REQUEST['new']) + $Book;
    SaveBook(GBook, $Book);
    }
    include "view.htm";
    ?>
     
  2. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Проблема в
     
  3. sam

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

    С нами с:
    22 окт 2009
    Сообщения:
    45
    Симпатии:
    0
    пишет что нету такого каталога .., а где взять?или чтото кудато надо добавить?
    устанавливал Пшп и апаче по инструкции- php.ru/install
     
  4. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    Парень. ты же писал это с учебника.

    Я учебник не читал.

    Ищи что там написано, где брать "model.php"
     
  5. iliavlad

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

    С нами с:
    24 янв 2009
    Сообщения:
    1.689
    Симпатии:
    4
    а в книге нет попроще примеров?
     
  6. SSV

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

    С нами с:
    29 окт 2009
    Сообщения:
    6
    Симпатии:
    0
    Понимаю что не по адресу, но всё же может кто поможет


    После создания базы данных, база данных не выбирается

    if ($link=mysql_connect("sdb_name", "user_name", "user_password"))
    {
    echo "<br>Не могу соединиться с сервером базы данных<br>";
    exit();
    }
    echo "<br>Соединение с сервером базы данных прошло успешно<br>";

    if (!mysql_select_db($db_name, $link))
    {
    echo "<br>Не могу выбрать базу данных<br>";
    exit();
    }
    echo "<br>Выбрана база данных<br>";


    при наборе http://localhost/test/indexi.php получается

    Соединение с сервером базы данных прошло успешно

    Не могу выбрать базу данных


    Может где не прописан путь :oops: ........
     
  7. Frozen

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

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    if ($link=mysql_connect("sdb_name", "user_name", "user_password"))

    возвращает FALSE
     
  8. SSV

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

    С нами с:
    29 окт 2009
    Сообщения:
    6
    Симпатии:
    0
    возвращает TRUE
     
  9. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    SSV
    Выведи себе
    $db_name

    и проверь, есть ли у тебя такая база :)

    а вообще пользуйся mysql_error() оно обычно говорит, что у тебя не так.
     
  10. running-frag

    running-frag Активный пользователь

    С нами с:
    4 сен 2008
    Сообщения:
    65
    Симпатии:
    0
    PHP:
    1. if (/* если здесь $link == TRUE*/)
    2. {
    3.  // выполняется это, а т.к у тебя тут exit()...
    4. }
    5. else
    6. {
    7.  // по другому, т.е. $link == FALSE, выполняется это
    8. }
    exit() - Output a message and terminate the current script.

    На твоём примере проверь var_dump($link). И увидешь сам...

    PS: Проблема решается добавление отрицания в условие "!", если я правильно понял.
     
  11. SSV

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

    С нами с:
    29 окт 2009
    Сообщения:
    6
    Симпатии:
    0
    $db_name="test_db";

    if ($link=mysql_connect("sdb_name", "user_name", "user_password"))
    {
    echo "<br>Не могу соединиться с сервером базы данных<br>";
    exit();
    }
    echo "<br>Соединение с сервером базы данных прошло успешно<br>";

    mysql_select_db($db_name, $link) or die (mysql_error());

    написал

    Соединение с сервером базы данных прошло успешно
    Unknown MySQL server host 'sdb_name' (11001)
     
  12. karakh

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

    С нами с:
    11 дек 2007
    Сообщения:
    1.344
    Симпатии:
    0
    он кагбэ намекает, что сюда (в форму) ты пишешь $db_name, а в скрипте у тебя вместо $ стоит буква s.
     
  13. running-frag

    running-frag Активный пользователь

    С нами с:
    4 сен 2008
    Сообщения:
    65
    Симпатии:
    0
    Боюсь спросить а что у тебя "sdb_name" обозначает? Даже если это очепятка, пусть "$db_name". XD Читаем тут ... mysql_connect
     
  14. SSV

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

    С нами с:
    29 окт 2009
    Сообщения:
    6
    Симпатии:
    0
    Спасибо ребят, заработало!!!!
     
  15. SSV

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

    С нами с:
    29 окт 2009
    Сообщения:
    6
    Симпатии:
    0
    Созданная до этого база данных

    $db_name="test_db";

    $str_sql_query="CREATE DATABASE test_db";
     
  16. running-frag

    running-frag Активный пользователь

    С нами с:
    4 сен 2008
    Сообщения:
    65
    Симпатии:
    0
    А при чём тут к коннету (mysql_connect()) имя базы? Ты же подключаешься ко MySQL а не выбераешь базу из неё (mysql_select_db())... Линку я уже выше дал.
     
  17. SSV

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

    С нами с:
    29 окт 2009
    Сообщения:
    6
    Симпатии:
    0
    running-frag
    Подключившись к MySQL, выбираю базу данных

    $sdb_name="localhost";
    $user_name="root";
    $user_password="xxx";
    $db_name="test_db";

    $link = mysql_connect($sdb_name, $user_name,$user_password) or die (mysql_error());

    mysql_select_db($db_name, $link) or die (mysql_error());

    Главное всё работает!!!!
     
  18. running-frag

    running-frag Активный пользователь

    С нами с:
    4 сен 2008
    Сообщения:
    65
    Симпатии:
    0
    PHP:
    1. $sdb_name="localhost";
    2. $db_name="test_db";
    Очень мило... XD
     
  19. sam

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

    С нами с:
    22 окт 2009
    Сообщения:
    45
    Симпатии:
    0
    гаварят анчинать с гостевой ...))
     
  20. sam

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

    С нами с:
    22 окт 2009
    Сообщения:
    45
    Симпатии:
    0
    вот еще вопросик возник ,уже с графикой ...
    данный скрипт должен выводить три разноцветных пересикающихся круга где в местах пересечения можно наблюдать эффектное смешение цветов ( это из темы - полупрозрачных цветов)
    так вместо кругов выводит ошибку-
    Fatal error: Call to undefined function imageCreateTrueColor() in C:\Program Files\Apache Group\Apache2\htdocs\test\semitransp.php on line 4

    а вот сам скрипт
    <?php
    $size = 300;

    $im = imageCreateTrueColor($size, $size);

    $back = imageColorAllocate($im, 255, 255, 255);
    imageFilledRectangle($im, 0, 0, $size - 1, $size - 1, $back);
    $yellow = imageColorAllocateAlpha($im, 255, 255, 0, 75);
    $red = imageColorAllocateAlpha($im, 255, 0, 0, 75);
    $blue = imageColorAllocateAlpha($im, 0, 0, 255, 75);
    $radius = 150;
    imageFilledEllipse($im, 100, 75, $radius, $radius, $yellow);
    imageFilledEllipse($im, 120, 165, $radius, $radius, $red);
    imageFilledEllipse($im, 187, 125, $radius, $radius, $blue);
    Header('Content-type: image/png');
    imagePng($im);
    ?>
     
  21. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    расширение GD не стоит.
     
  22. running-frag

    running-frag Активный пользователь

    С нами с:
    4 сен 2008
    Сообщения:
    65
    Симпатии:
    0
    Не знаю как ты читаешь и учишь. Но лично я когда вижу код, и хочу его использывать, то сначало тупо переписываю. После пишу с нуля его же только со своими переменными, таким образом это всё держится в голове, весь логический процесс. Ну и что то дописывается само (под себя) что то наоборот убирается. Переписывать один в один, какой от этого толк, не вижу.

    В общем то "Каждый дрочит как хочет" (с). Но с "$sdb_name" меня вообще разорвало...
     
  23. sam

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

    С нами с:
    22 окт 2009
    Сообщения:
    45
    Симпатии:
    0
    а где и как поставить подскажите пожалуйста :roll:
     
  24. Simpliest

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

    С нами с:
    24 сен 2009
    Сообщения:
    4.511
    Симпатии:
    2
    Адрес:
    Донецк
    php.ini
    раскомментировать соответствующую строчку
     
  25. sam

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

    С нами с:
    22 окт 2009
    Сообщения:
    45
    Симпатии:
    0
    ой пасиба выручили работает! :)
    а может вы посоветуете заодно и интересную литературку для новичков или какинибудь приемы обучения .
    За ранее благодарен.