За последние 24 часа нас посетил 53691 программист и 1765 роботов. Сейчас ищут 1463 программиста ...

Обработчик INSERT

Тема в разделе "PHP для новичков", создана пользователем Panich, 13 авг 2012.

  1. Panich

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

    С нами с:
    10 май 2011
    Сообщения:
    548
    Симпатии:
    0
    Адрес:
    Ростов-Москва
    Есть несколько форм и файл,который обрабатывает полученные от неё данные.Так вот при обращении и этому файлу выдаёт ошибку:
    Код (Text):
    1. unknown:failed to open stream:no such file or derectory
    Код (Text):
    1. Unknown:failed opening required 'Z:/home/.......index.php' (include_path='.;C:\php\pear') in Unknown on line 0
    Имя и путь проверял несколько раз-всё в номе.Искал ответ в интернете,но в 90% случаев пишут,что проблемы с хостером-но вот только я работаю на денвере в локалхосте...
    Что не так?Помогите,пожалуйста,разобраться...
     
  2. gromdron

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

    С нами с:
    10 авг 2012
    Сообщения:
    14
    Симпатии:
    0
    А можно побольше данных ?
    Например: список файлов с уровнями, код форм, код файла.

    Ты уверен что в формах у тебя правильные action прописаны ?

    Работаешь на денвере ? А в файл из браузера зайти можешь ? Может денвер не перезапустил и он не видит файла ? Там есть небольшой грешок (на какой-то из версиях был), что если ты у уже запущенного денвера создашь директорию и файл в нем, то он этого не увидит, нужен перезапуск.
     
  3. Panich

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

    С нами с:
    10 май 2011
    Сообщения:
    548
    Симпатии:
    0
    Адрес:
    Ростов-Москва
    Там смысл в чём:
    У меня есть пункты 1,2,3 - нажал я на 1 и у меня высветились (через ajax) 4,5,6...и так несколько раз...
    Вот форма:
    Код (Text):
    1. if ($_POST['namMark2'] == 'Моторные масла для бензиновых двигателей')
    2. {
    3. echo "<div id='delMark2'><form action='insertPriСЃe.php' method='POST'>
    4.         <input name='aboutP' type='hidden' value='oil'>
    5.         <input name='forP' type='hidden' value='Моторные масла для бензиновых двигателей'>
    6.         <table>
    7.             <tr><td><i>наименование (РїСЂРёРј.: Рњ-6Р·/12Р“1)</i></td>
    8.                 <td><input name='nameP' type='text' value=''></td>
    9.             </tr>
    10.             <tr><td><i>предназначение (РїСЂРёРј.: Моторное масло)</i></td>
    11.                 <td><input name='functionP' type='text' value=''></td>
    12.             </tr>
    13.             <tr><td><i>ГОСТ (РїСЂРёРј.: ГОСТ 10541-78)</i></td>
    14.                 <td><input name='gostP' type='text' value=''></td>
    15.             </tr>
    16.             <tr><td><i>фасовка (РїСЂРёРј.: бочка / 180 РєРі.)</i></td>
    17.                 <td><input name='packingP' type='text' value=''></td>
    18.             </tr>
    19.             <tr><td><i>цена (РїСЂРёРј.: 11240)</i></td>
    20.                 <td><input name='priceP' type='text' value=''></td>
    21.             </tr>
    22.             <tr><td><i>налив? (РїСЂРёРј.: РґР°/нет)</i></td>
    23.                 <td><input name='discountP' type='text' value=''></td>
    24.             </tr>
    25.         </table>
    26.         <input type='submit' value='загрузить'/>
    27.     </form></div>";
    28. }
    Вот обработчик:
    Код (Text):
    1. <?php
    2. include ("bd_price.php");
    3. $about = $_POST['aboutP'];
    4. $for = $_POST['forP'];
    5. $name = $_POST['nameP'];
    6. $function = $_POST['functionP'];
    7. $gost = $_POST['gostP'];
    8. $packing = $_POST['packingP'];
    9. $price = $_POST['priceP'];
    10. if ($_POST['discountP'] == 'да' || $_POST['discountP'] == 'Да' || $_POST['discountP'] == 'ДА')
    11. {
    12. $discount = '1';
    13. }
    14. else
    15. {  
    16. $discount = '0';
    17. }
    18. $sql = "INSERT INTO `price` (mark, for, name, function, gost, packing, price, discount, about) VALUES ('$name', '$for', '$function', '$gost', '$packing', '$price', '$discount', '$about')"
    19. $result = mysql_query($sql, $db)or die("Ошибка в запросе: " . mysql_error());
    20. if (!$result)
    21. {
    22. echo "ошибка - ".mysql_error()."<br>";
    23. echo $sql;
    24. exit();
    25. }
    26. else
    27. {
    28. header("Location: hell.php");
    29. exit();
    30. }
    31. ?>
    А тут как я реализовал высвечивание пунктов:
    Код (Text):
    1. п»ї$('#oil, #dopant, #lubricant, #consrvMat, #ohlodSr').live('click', function(){       
    2.     var namPrise = $(this).parent().val();
    3.     $.ajax({
    4.     type: "POST",
    5.     url: "AdPrice.php",
    6.     data: {'namPrise':namPrise},
    7.         success: function(data){
    8.         $('#namPrise').html(data);
    9.         var delMark = document.getElementById('delMark');
    10.         delMark.parentNode.removeChild(delMark);
    11.         var delMark2 = document.getElementById('delMark2');
    12.         delMark2.parentNode.removeChild(delMark2);
    13.         }
    14.     });
    15. });
    16. $('#motoM, #transM, #gidravM, #indusM, #energM, #aviaM, #sintetM, #otherM, #dop, #antifricL, #uplotL, #consMat, #ohlodS').live('click', function(){
    17.     var namMark = $(this).parent().val();
    18.     $.ajax({
    19.     type: "POST",
    20.     url: "AMarkPrice.php",
    21.     data: {'namMark':namMark},
    22.         success: function(data){
    23.         $('#namMark').html(data);
    24.         }
    25.     });
    26. });
    27. $('#motoMB, #motoMD, #gidrM, #vseM, #mnogS, #termS, #pasts, #pribS, #aviaS, #elektMS, #elektS, #morS, #indS, #avtoS').live('click', function(){
    28.     var namMark2 = $(this).parent().val();
    29.     $.ajax({
    30.     type: "POST",
    31.     url: "AMark2Price.php",
    32.     data: {'namMark2':namMark2},
    33.         success: function(data){
    34.         $('#namMark2').html(data);
    35.         }
    36.     });
    37. });
    Пока копировал через блокнот что-то с кодировкой произошло,но думаю и так всё понятно!
    Ещё какие данные предоставить?

    Добавлено спустя 13 минут 3 секунды:
    Очень странно,но помогла замена в названии файла обработчика буквы "С" на "S"...
    А кто знает что за дела-может описать в качестве просветления...
     
  4. gromdron

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

    С нами с:
    10 авг 2012
    Сообщения:
    14
    Симпатии:
    0
    Может название файла начиналось с русской буквы ?

    P.S. Почитайте про SQL-injection, и обезопасьте свой код!
     
  5. Panich

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

    С нами с:
    10 май 2011
    Сообщения:
    548
    Симпатии:
    0
    Адрес:
    Ростов-Москва
    Нет!Всё было на английском...
    А про безопасность-это работа с переменными в админке,поэтому я не стал заморачиваться...или нужно?
     
  6. Крыс

    Крыс Активный пользователь

    С нами с:
    3 фев 2012
    Сообщения:
    449
    Симпатии:
    0
    винда или линукс? если линукс - посмотрите права на файл
     
  7. Panich

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

    С нами с:
    10 май 2011
    Сообщения:
    548
    Симпатии:
    0
    Адрес:
    Ростов-Москва
    Не...винда!
     
  8. gromdron

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

    С нами с:
    10 авг 2012
    Сообщения:
    14
    Симпатии:
    0
    А как файлы то назывались ?
     
  9. Panich

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

    С нами с:
    10 май 2011
    Сообщения:
    548
    Симпатии:
    0
    Адрес:
    Ростов-Москва
    в названии слово price заменил на prise-вот и всё!!!
    А вообще,как профессионал своего дела-что скажете?:http://rosneft.16mb.com/rosneft/index.php

    Решил потренироваться-мой первый сайт!!!