2010-04-03 3 views
0

Я пытаюсь получить некоторые данные формы из метода POST.

Вот код формы -

<form action="" method="post" name="form1" id="form1"> 

<input type="hidden" value="15" name="ad_id"> 

    <table width="100%" cellspacing="0" cellpadding="0" border="0" class="block"> 

    <tbody><tr> 

     <td valign="top">&nbsp;</td> 

     <td align="right">all fields are required</td> 

    </tr> 

    <tr> 

     <td valign="top">&nbsp;</td> 

     <td align="center"></td> 

    </tr> 

    <tr> 

     <td valign="top" width="150"><label for="name">Advertisement Name</label> 

     *</td> 

     <td><input type="text" size="45" value="Banner" id="name" name="name"> 

     e.g Home Banner</td> 

    </tr> 

    <tr> 

     <td valign="top"><label for="placement">Advertisement Placement</label></td> 

     <td><select id="placement" name="placement">  

Широкий небоскреб 160 х 600

</tr> 

    <tr> 

     <td valign="top"><label for="code">Advertisement Code</label></td> 

     <td><textarea rows="5" cols="45" id="code" name="code"></textarea></td> 

    </tr> 

    <tr> 

     <td>Status</td> 

     <td><label> 

     <input type="radio" checked="checked" value="1" name="status"> 

     Active</label> 

     <label> 

      <input type="radio" value="0" name="status"> 

     Inactive</label></td> 

    </tr>   
    <input type="hidden" value="1" name="banner_uploaded" id="banner_uploaded"> 
    <tr> 
    <td>For Country - </td> 
    <td> 
     <select id="country" name="country">   
<option>Not posting all the names of country</option> 
     </select> 
    </td> 
    </tr> 
    <tr> 
           <td><label for="Scheduling">Valid From </label></td> 
    <td><input type="text" value="" id="date-from" name="date-from"> Format : dd/mm/yyyy:hh/mm</td> 
    </tr> 
    <tr> 
           <td><label for="Scheduling">Valid Till </label></td> 
    <td><input type="text" value="" id="date-to" name="date-to"> Format : dd/mm/yyyy:hh/mm</td> 
    </tr> 

    <tr> 

     <td>&nbsp;</td> 

     <td align="right"><input type="submit" onclick="return validate_ad_form(add_adv)" value="Update Advertisement" class="button" name="update"></td> 

    </tr> 

    </tbody></table> 

</form> 

Но я получаю $ _POST [ 'код'] пустой, когда я передаю HTML-код через Это.

Когда я передаю простой текст, он отлично работает.

Когда я напечатал $ _POST [т.е. used - print_r ($ _ POST)], я получил следующий результат:

Array ([ad_id] => 15 [name] => Banner [место размещения] => ad_468x60 [code] => [status] => 1 [banner_uploaded] => 1 [country] => IN [date-from] => [date-to] => [update] => Обновить рекламу)

Будьте добры, я не ввел дату -from ',' date-to '.

Я вступил в силу, поскольку StackOverflow не позволяет отправлять изображения!

Люди, любая помощь будет высоко оценена.

+0

Код HTML, который я передаю - kapeels

+1

Вы используете фреймворк? Возможно, это может быть удаление HTML из переменной POST? –

+0

@col. шрапнель ..... я не могу тебя понять. @ethier оригинальный скрипт ClipBucket (его также можно назвать CMS) .Проверьте источники, ничего не нашли :-( – kapeels

ответ

1

Проблема в том, что вы находитесь print_r(), отображается в браузере. Если у вас есть HTML в ваших данных POST, эти теги будут интересны как HTML, когда вы сбросите данные. Вам придется принудительно выводить вывод в режим открытого текста (header('Content-type: text/plain);) или запускать поля, которые могут содержать HTML в них через htmlspecialchars(), чтобы избежать < и> символов.

Если вы просматриваете источник страницы, на которой вы делаете print_r(), я подозреваю, что вы увидите там HTML-теги. Если вы только протестировали с этим изображением example.jpg, вы ничего не увидите, потому что этого изображения, скорее всего, не существует, поэтому он не будет отображаться, а затем тег <a> не имеет ничего, чтобы подчеркнуть и не будет отображаться или.