За последние 24 часа нас посетили 33965 программистов и 1319 роботов. Сейчас ищут 1029 программистов ...

Получение данных из формы

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

  1. darkgod

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

    С нами с:
    31 мар 2008
    Сообщения:
    201
    Симпатии:
    0
    Доброго всем дня...

    у мне появился вопрос, из-за того что мне не совсем нравится моя конструкция и нагромождение кода...

    при передаче данных из формы передаю их в sql запрос таким способом:

    PHP:
    1. <?
    2. $name_product=str_replace("'","`",$_POST['name_product']);
    3. $title_product=str_replace("'","`",$_POST['title_product']);
    4. $textshort_product=str_replace("'","`",$_POST['textshort_product']);
    5. $text_product=str_replace("'","`",$_POST['text_product']);
    6. $description_product=str_replace("'","`",$_POST['description_product']);
    7. $keywords_product=str_replace("'","`",$_POST['keywords_product']);
    8. $id_cat_shop=str_replace("'","`",$_POST['id_cat_shop']);
    9. $date_product=str_replace("'","`",$_POST['date_product']);
    10. $author_product=str_replace("'","`",$_POST['author_product']);
    11. ?>
    и после уже переменные подставляю в инсерт или апдейт...

    Но вот это нагромождение мне совсем не нравится! Как можно сделать чтобы все работало, но небыло такой кучи кода?
     
  2. Greg1978

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

    С нами с:
    18 окт 2008
    Сообщения:
    484
    Симпатии:
    0
    Адрес:
    class SenjorUser{}
    А для чего str_replace();?
    Может наверное mysql_escape_string() .....
     
  3. darkgod

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

    С нами с:
    31 мар 2008
    Сообщения:
    201
    Симпатии:
    0
    ну собсно не в этом вопрос... а str_replace тут нужен для замены в тексте апострофа на знак ` - чтобы небыло конфликтов...
     
  4. darkgod

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

    С нами с:
    31 мар 2008
    Сообщения:
    201
    Симпатии:
    0
    ну что никакими другими способами нельзя облегчить???
     
  5. Volt(220)

    Volt(220) Активный пользователь

    С нами с:
    11 июн 2009
    Сообщения:
    1.640
    Симпатии:
    1
    Чисто теоретически, если потом использовать не $name_product, а $_POST['name_product'] и если в $_POST только данные формы, то:
    PHP:
    1.  
    2. foreach ($_POST as $gdeto=>$nechto){
    3.   $_POST[$gdeto]=mysql_real_escape_string($_POST[$gdeto])
    4. }
    5.  
    Но это скорее в порядке бреда, чем для реального использования :)