Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: URL страницы с параметрами
 
 автор: max90   (02.09.2013 в 15:23)   письмо автору
 
 

Добрый день.
Подскажите, пожалуйста, как получить урл страницы с параметрами, передающимися методом POST?

  Ответить  
 
 автор: confirm   (02.09.2013 в 15:28)   письмо автору
 
   для: max90   (02.09.2013 в 15:23)
 

Переменные и их значения передаваемые методом POST в url не содержатся. Поучать их нужно из супер глобального массива $_POST.

  Ответить  
 
 автор: max90   (02.09.2013 в 15:41)   письмо автору
 
   для: confirm   (02.09.2013 в 15:28)
 

Ясно. Спасибо.
Тогда опишу проблему подробнее. Написал парсер статей с википедии. При конвертировании кодировки из утф-8 в ср1251 некоторые символы заменяются на знак вопроса (пример:大). Приходится редактировать большие объемы текста. Заметил что при пропускании через POST символ 大 меняется на хтмл код &#22823. Потому спрашивал про POST. Хотел весь текст пропускать через него:) Мож есть другой способ преобразования символов в HTML?

  Ответить  
 
 автор: confirm   (02.09.2013 в 16:23)   письмо автору
 
   для: max90   (02.09.2013 в 15:41)
 

Что значит "при пропускании через POST"? Не выдумывайте, POST это метод передачи данных, к кодировке отношения не имеющий.
При конвертировании UTF в cp1251 и будет происходить замена символов на html представление, которые не содержит cp1251. При этом не все символы могут иметь представления, и не все браузеры отображают весь их существующий набор.

Не стоит конвертировать UTF в cp1251 содержание, которое гораздо шире cp1251.
Прочтите о ASCII и UTF-8. И храните данные в UTF, по крайней мере те, что никак не "влазят" в рамки ASCII.

  Ответить  
 
 автор: Добрый кот   (02.09.2013 в 17:01)   письмо автору
 
   для: confirm   (02.09.2013 в 16:23)
 

Чего выдумывать то? Можете сами проверить. иероглиф можете взять например тут http://ru.wikipedia.org/wiki/%D0%AF%D0%BF%D0%BE%D0%BD%D0%B8%D1%8F
код примерно такой
<?php 

if( key($_POST['action']) == "1" ) {
$save_con $_POST['save_con'];
$getsite $save_con['getsite'];
var_dump($getsite);           // получим string(16) "&#26085;&#26412;"
}else{

echo <<<HTML
<title>Addnews</title>
<form method="post" action="">
<table width="100%" border="0">
  <tr>
    <td width="22%"><p><strong>URL </strong></p></td>
    <td><input name="save_con[getsite]" type="text" class="f_input" value="" size="77" />
    </td>
  </tr>
  <tr>
    <td></td>  
    <td><input class="buttons" type="submit" name="action[1]" value=" go" /></td></td>
  </tr>
</table>
</form>
HTML;
}
?>


по конвертации
<?php 
$str 
mb_convert_encoding('&#974;' "Windows-1251""UTF-8");
var_dump($str);     // получим   string(1) "?"
?>


UTF, к сожалению не подойдет, сайт на cp1251

  Ответить  
 
 автор: confirm   (02.09.2013 в 17:07)   письмо автору
 
   для: Добрый кот   (02.09.2013 в 17:01)
 

Это вы мне или автору?

Если мне, то прежде чем определять "язык" на котором будет вещать сайт, я сначала определюсь с тем о чем он "говорить будет", а не лечить потом головную боль.

Что касается POST и вашего примера, то не выдумывайте и вы - POST, это не конвертор кодировок, а представление (в нtml), это никак не переопределение кодировки.

  Ответить  
 
 автор: Добрый кот   (02.09.2013 в 19:42)   письмо автору
 
   для: confirm   (02.09.2013 в 17:07)
 

>Это вы мне или автору?
Это две мои учетки:) Сижу дома и на работе.

>Что касается POST и вашего примера, то не выдумывайте и вы - POST, это не конвертор кодировок, а представление (в нtml), это никак не переопределение кодировки.
Так я не говорю, что POST конвертирует кодировки. Мне необходимо представить символы в виде хтмл, что делает POST. Потому и спрашиваю

  Ответить  
 
 автор: confirm   (02.09.2013 в 20:19)   письмо автору
 
   для: Добрый кот   (02.09.2013 в 19:42)
 

Поймите, хранить в базе в html представлении уже плохо, не удобно. А ведь Вики статьи, это широкий диапазон, и в зависимости от содержимого результат конвертирования может содержать не один, и не два, а много таких представлений.

Вот выполните вот такое:
<?
$tbl 
'<table><tr>';
for(
$i=0$i<20010$i++) {
   if(
$i && !($i 15)) $tbl .= '</tr><tr>';
   
$tbl .= '<td>'.htmlspecialchars('&#'.$i.';').' - &#'.$i.';</td>';
}
echo 
$tbl.'</tr></table>';


Вы получите таблицу символов в html представлении. Откройте эту таблицу в различных браузерах. Сможете наблюдать, что гарантированно во всех браузерах отображаются символы входящие в диапазон ASCII, а вот дальше, типа псевдографики, графические символы и другие либо не отображаются в некоторых браузерах (квадратики или вопросы в место них), либо отображается отличное, чем в других браузерах.

То есть, если вы точно знаете, что конвертируете текст и при этом получаете мало огрехов типа "не отображает нужное 2-3 символа", еще можно как-то пренебречь этим. Но если это значительная часть текста исходного, то зачем это нужно, может подумать о переходе на UTF? Переконвертировать исходное в базах можно, статические тексты тоже можно, плохо, что и РНР скрипты придется перезаписать в UTF. Но зато и пользователи будут видеть то, что и должны, а не вопросы и другое не читаемое, ибо iconv не волшебник, большего что можно получить, он не в состоянии выдать.

  Ответить  
 
 автор: Добрый кот   (02.09.2013 в 20:36)   письмо автору
 
   для: confirm   (02.09.2013 в 20:19)
 

Ясно. Спасибо огромное за развернутый ответ.
Уже давно думал о переходе на UTF, т.к это далеко не единственная проблема связанная с кодировкой, все время приходилось костыли изобретать.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования