За последние 24 часа нас посетили 17582 программиста и 1630 роботов. Сейчас ищут 1973 программиста ...

Неопределенная переменная

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

  1. kuliev

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

    С нами с:
    10 фев 2006
    Сообщения:
    204
    Симпатии:
    0
    Адрес:
    TLT
    Notice: Undefined variable: name in z:\home\abb\www\script.php on line 28

    Чтото я ни хрена не пойму, на одной машине все работает, дома у меня нет!!!
    Вобщем с формы данные должны записываться в базу, но почемуто выводит Notice: Undefined variable: name in z:\home\abb\www\script.php on line 28 )))
    Спасибо за помощь! :)
     
  2. Sergey89

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

    С нами с:
    4 янв 2007
    Сообщения:
    4.796
    Симпатии:
    0
    Пожалуйста. Телепаты бастуют.
     
  3. Inakrin

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

    С нами с:
    26 авг 2007
    Сообщения:
    32
    Симпатии:
    0
    А код где? Я такую ошибку при отладке своих скриптов частенько вижу)
     
  4. kuliev

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

    С нами с:
    10 фев 2006
    Сообщения:
    204
    Симпатии:
    0
    Адрес:
    TLT
    HTML:
    1.  
    2.  
    3. <meta name="description" content="">
    4. <meta name="keywords" content="">
    5. <link href="css/style.css" rel="stylesheet" type="text/css">
    6. </head>
    7.  
    8.  
    9. <h1 class=td>Заполните все поля формы для записи в базу!<h1>
    10. <center>
    11. <form action="script.php" method="POST">
    12.  
    13.  <br><br><br>
    14. <table width="" height="" cellpadding="2" cellspacing="2" border="0" class="border">
    15.   <tr>
    16.     <td valign="top" align="center"><b>Сотрудник:<b></td>
    17.     <td valign="top" align="center"><b>Фамилия:<b></td>
    18.     <td valign="top" align="center"><b>Имя:<b></td>
    19.     <td valign="top" align="center"><b>Отчество:<b></td>
    20.     <td valign="top" align="center"><b>Поручитель:<b></td>
    21.   </tr>
    22.   <tr>
    23.     <td valign="top" align="center"><b>
    24.  
    25.     <select name="sotrudnik">
    26.     <option value="">--Сотрудник--</option>
    27.     <option value="Ильина Т.В.">Ильина Т.В.</option>
    28.     <option value="Епанешников Ю.Е.">Епанешников Ю.Е.</option>
    29.     <option value="Савин Д.О.">Савин Д.О.</option>
    30.  
    31. <b></td>
    32.     <td valign="top" align="center"><b><input name="fam" type="text" class="border" /><b></td>
    33.     <td valign="top" align="center"><b><input name="name" type="text" class="border" /><b></td>
    34.     <td valign="top" align="center"><b><input name="otc" type="text" class="border" /><b></td>
    35.     <td valign="top" align="center"><b><input name="poruc" type="text" class="border" /><b></td>
    36.   </tr>
    37.   <tr>
    38.     <td valign="top" align="center"><b>Вид кредита:<b></td>
    39.     <td valign="top" align="center"><b>% ставка:<b></td>
    40.     <td valign="top" align="center"><b>Перв. взнос:<b></td>
    41.     <td valign="top" align="center"><b>Сумма кредита:<b></td>
    42.     <td valign="top" align="center"><b>Срок кредита<b></td>
    43.   </tr>
    44.   <tr>
    45.     <td valign="top" align="center"><b>
    46.     <select name="kredit">
    47.     <option value="">--Вид кредита--</option>
    48.     <option value="Потребительский">Потребительский</option>
    49.     <option value="Ипотека">Ипотека</option>
    50.     <option value="Любимое авто">Любимое авто</option>
    51.     <option value="Экспресс авто">Экспресс авто</option>
    52.  
    53.     <b></td>
    54.     <td valign="top" align="center"><b><input name="procent" type="text" class="border" /><b></td>
    55.     <td valign="top" align="center"><b><input name="vznos" type="text" class="border" /><b></td>
    56.     <td valign="top" align="center"><b><input name="summa" type="text" class="border" /><b></td>
    57.     <td valign="top" align="center"><b><input name="srok" type="text" class="border" /><b></td>
    58.   </tr>
    59.   <tr>
    60.     <td valign="top" align="center"><b>Состояние:<b></td>
    61.     <td valign="top" align="center"><b>Тел. дом.<b></td>
    62.     <td valign="top" align="center"><b>Тел. моб.<b></td>
    63.     <td valign="top" align="center"><b>Город:<b></td>
    64.   </tr>
    65.   <tr>
    66.     <td valign="top" align="center">
    67.     <select name="sos">
    68.     <option value="">--Результат--</option>
    69.     <option value="Положительно">Положительно</option>
    70.     <option value="Отказ">Отказ</option>
    71.     </select></td>
    72.     <td valign="top" align="center"><b><input name="phone_h" type="text" class="border" /><b></td>
    73.     <td valign="top" align="center"><b><input name="phone_s" type="text" class="border" /><b></td>
    74.     <td valign="top" align="center">
    75.     <select name="city">
    76.     <option value="">--Выбирите город--</option>
    77.     <option value="Тольятти">Тольятти</option>
    78.     <option value="Жигулевск">Жигулевск</option>
    79.     </select></td>
    80.     <td valign="top" align="center"><b><input type="submit" name="go" value="Записать" class="border"><b></td>
    81.     <td valign="top" align="center"><b><input type="reset" name="" value="Сброс" class="border"><b></td>
    82.   </tr>
    83.  
    84. </form>
    85.   </center>
    86.   <br><br><br><br><br><br><br><br>
    87. <table width="100%">
    88.   <tr>
    89.     <td class="bg"><center></center></td>
    90.   </tr>
    91.  
    92.  
    93. </body>
    94.  
    95. </html>
    96.  
    PHP:
    1.  
    2.  <html>
    3.  
    4. <head>
    5. <title></title>
    6. <meta name="description" content="">
    7. <meta name="keywords" content="">
    8. <link href="css/style.css" rel="stylesheet" type="text/css">
    9. </head>
    10.  
    11. <body>
    12. <?
    13.  
    14. $host="localhost";
    15. $user="root";
    16. $pass="";
    17. $db="abb";
    18. $table="zaem";
    19.  
    20.  $date=date("Y-m-d");
    21.  echo $_POST['fam'];
    22.  
    23.  
    24. mysql_connect("$host","$user","$pass") or die ("Ошибка нет подключения к базе");
    25. @mysql_select_db("$db") or die ("Такой базы нет");
    26.  
    27.  
    28. $query=(" insert into $table values
    29. (zaem_id,'$date','$sotrudnik','$city','$fam','$name','$otc','$poruc','$kredit','$procent','$vznos','$summa','$srok','$sos','$phone_h','$phone_s')");
    30.  
    31. $result=mysql_query($query);
    32.  
    33.  
    34. Echo "Ваши данные занесены успешно";
    35. echo "<br>";
    36. Echo "<a href=index.php>Добавить запись</a>";
    37.  
    38. ?>
    39. </body>
    40.  
    41. </html>
    42.  
     
  5. Inakrin

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

    С нами с:
    26 авг 2007
    Сообщения:
    32
    Симпатии:
    0
    man register_globals
    man safe_mode

    И вместо $name и всего остального следует использовать массивы $_GET, $_POST и $_REQUEST
    О них тоже почитать следует)
    И у вас одна сплошная sql инъекция. О ней тоже почитайте) Дабы потом волосы на голове не рвать))))
     
  6. Inakrin

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

    С нами с:
    26 авг 2007
    Сообщения:
    32
    Симпатии:
    0
    Когда сумма кредита в базе изменится на нечто, что вам неочень понравится))))
     
  7. kuliev

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

    С нами с:
    10 фев 2006
    Сообщения:
    204
    Симпатии:
    0
    Адрес:
    TLT
    Он ругается если использовать $_POST['name']; ))))
     
  8. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    ну так используй if(isset($_POST['name'])) для проверки, что переменная не пустая
     
  9. Hight

    Hight Старожил
    Команда форума Модератор

    С нами с:
    5 мар 2006
    Сообщения:
    7.153
    Симпатии:
    0
    Адрес:
    из злой параллельной вселенной
    что переменная определена.
     
  10. Luge

    Luge Старожил

    С нами с:
    2 фев 2007
    Сообщения:
    4.680
    Симпатии:
    1
    Адрес:
    Минск
    про другое думал когда писал, спасибо что поправил :)
     
  11. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    ткни пальцем, где ты увидел sql-инъекцию
     
  12. antonn

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

    С нами с:
    10 июн 2007
    Сообщения:
    2.996
    Симпатии:
    0
    ?
    [sql] $query=(" insert into $table values (zaem_id,'$date','$sotrudnik','$city','$fam','$name','$otc','$poruc','$kredit','$procent','$vznos','$summa','$srok','$sos','$phone_h','$phone_s')");[/sql]
     
  13. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    antonn
    то неправильно составленный вопрос, который наверняка не работает )
     
  14. Anonymous

    Anonymous Guest

    host, нет, он к тому, что нет ни одной инициализованной переменной, соответсственно, можно передать любые значения, во вторих, ничего не экранируется - можно вообще вызвать другой запрос.
     
  15. host

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

    С нами с:
    20 июн 2007
    Сообщения:
    733
    Симпатии:
    3
    Горбунов Олег
    Спасибо большое за разъяснения. Действительно, можно. Это в плане безопасности огромная "дыра".
     
  16. kuliev

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

    С нами с:
    10 фев 2006
    Сообщения:
    204
    Симпатии:
    0
    Адрес:
    TLT
    Спасибо всем за помощь ))) Все работает с
    PHP:
    1. $_POST['']