PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 12
Geddar Отправлено: 16 Июля, 2012 - 10:48:25 • Тема: DOMDocument - проблемы с русским • Форум: Кодировки и все смежное

Ответов: 0
Просмотров: 1541
DOMDocument при выполнении loadHTML() конвертирует все русские буквы в html-представление, причём символы полученые на выходе далеко не русские. utf8_encode/decode не помог, а только изменил вид крючков.

PHP:
скопировать код в буфер обмена
  1. header('Content-type: text/plain; charset="utf-8"');
  2. $opis=new DOMDocument('1.0','UTF-8');
  3. $opis->loadHTML(utf8_encode($product['opis']));
  4. echo utf8_decode($opis->saveHTML());
Geddar Отправлено: 24 Ноября, 2009 - 08:59:23 • Тема: кодировка cp1251 глючит • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 83
Немного разобрался, оказывается база отвечала в utf8 Не понял не зависимо от указываемой кодировки. Страницы и база все были в cp1251.
Не стал заморачиваться перегнал всё в utf8, ведь так и правда "универсальнее".
Хотя причину такого глюка интересно знать. Думаю я где-то ошибся, т.к. и на хосте и на денвере результат был один

з.ы.
Если бы скрипт посылал заголовки не той кодировки, то весь сайт отображался бы крючками
Geddar Отправлено: 18 Ноября, 2009 - 15:49:38 • Тема: кодировка cp1251 глючит • Форум: SQL и Архитектура БД

Ответов: 4
Просмотров: 83
сайт в cp1251 и база тоже в cp1251, но вывод с базы выдаёт крючки

не помогает Однако

до этого всё было на utf8
при подключении было
все работало отлично, после конвертирования в cp1251 возник глюк с базой, хотя
база была создана заново, сам сайт работает отлично и проблем с кодировкой нет
Geddar Отправлено: 28 Июня, 2009 - 13:12:16 • Тема: IE удивил, upload не работает • Форум: Программирование на PHP

Ответов: 10
Просмотров: 929
http://graffiti-art[dot]ru/galery/upload.php вот линк на сам прогу в работе. К сожалению для заливки требуется авторизация Закатив глазки
Из JS там меню, угловой информер и по прежнему
CODE (text):
скопировать код в буфер обмена
  1.  
  2. wait=new Image();
  3. wait.src='../pic/wait.gif';
  4. function goto (a) {
  5. imgWin=open(a);}
  6.  
Geddar Отправлено: 28 Июня, 2009 - 12:55:23 • Тема: IE удивил, upload не работает • Форум: Программирование на PHP

Ответов: 10
Просмотров: 929
Да в Opera и Mozilla работает. В IE6 не работает Не понял . В сотальных не знаю
Geddar Отправлено: 28 Июня, 2009 - 11:02:10 • Тема: IE удивил, upload не работает • Форум: Программирование на PHP

Ответов: 10
Просмотров: 929
Ко всем файлам подключен jquery, но на этой странице однозначно нет JS ошибки (проверено Firebug), да кода JS на ней нет практически.
Тут как я понял дело в неких особенностях передачи файла IE. К слову сказанное, JustUserR IE вообще весьма "особенный" Радость браузер. Особенно убивает IE6 с его невозможностью прозрачности png, хотя этот формат существовал за 10 лет до выхода этого браузера =)

Есть у кого ещё варианты?
Geddar Отправлено: 27 Июня, 2009 - 17:36:15 • Тема: IE удивил, upload не работает • Форум: Программирование на PHP

Ответов: 10
Просмотров: 929
Прога аплоадит изображение на серв. При этом если изображение превышает некий размер (2500*2500 px) то оно под этот размер подгоняется.
Далее накладывается копирайт.
Файл берётся не из директории сайта, а из переданного браузером.
Как оказалась такая схема не работает в IE
В чём проблема, как решить?

Листинг файла upload.php
PHP:
скопировать код в буфер обмена
  1. <?
  2. @$coment=$_POST['com'];
  3. include '../header.php';
  4. log_avt(true);
  5. ?><script>
  6. wait=new Image();
  7. wait.src='../pic/wait.gif';
  8. function goto (a) {
  9. imgWin=open(a);}
  10. </script>
  11. <p align="center">
  12. <table  cellpadding="0" cellspacing="0" width="70%">
  13. <tr><td width="15"><img src="/pic/1u.png"></td>
  14. <td width="100%" style="background-image: url(/pic/r1.png);"></td></tr></table>
  15. <table border="0" background="/pic/pch.gif" width="70%" height="360"><tr>
  16. <?PHP
  17. $prload=false;
  18. $ind=false;
  19. @$file=$_FILES['uploading'];
  20. @$text=$_POST['com'];
  21. $text=substr($text,0,65500);   // Преобразование текста
  22. $text=htmlspecialchars($text,false);
  23. $text=wordwrap($text,90);
  24. $text=str_replace(array("\r\n", "\r", "\n"), "<br>", $text); //----
  25. $type=explode("/",$file['type']);
  26. $size=round($file['size']/1024);
  27. if(!empty($type[1]) and @$_SESSION['prfile']!=$file['name']){
  28. if($type[1]=="jpg" or $type[1]=="jpeg" and $size<3072){
  29. $date=date('ynjGis');
  30. $old=imagecreatefromjpeg($file['tmp_name']);
  31. $max=2500;
  32. $w=imageSX($old);
  33. $h=imageSY($old);
  34. function new_size($w,$h,$max){ //resize
  35. if($w>$h){
  36. if($w>$max){
  37. $w_new=$max;}
  38. else{
  39. $w_new=$w;}
  40. $newh=$h*$w_new/$w;
  41. $h_new=round($newh);}
  42. else{
  43. if($h>$max){
  44. $h_new=$max;}
  45. else{
  46. $h_new=$h;}
  47. $newh=$w*$h_new/$h;
  48. $w_new=round($newh);}
  49. return array('h'=>$h_new,'w'=>$w_new);}
  50. $hw_p=new_size($w,$h,$max*2);
  51. $new_s=imagecreatetruecolor($hw_p['w'], $hw_p['h']);
  52. imagecopyresized($new_s, $old, 0, 0, 0, 0, $hw_p['w'], $hw_p['h'], $w, $h);
  53. $hw=new_size($hw_p['w'],$hw_p['h'],$max);
  54. $new=imagecreatetruecolor($hw['w'], $hw['h']);
  55. imagecopyresampled($new, $new_s, 0, 0, 0, 0, $hw['w'], $hw['h'], $hw_p['w'], $hw_p['h']);
  56. // копирайт
  57. $nak=rand(-3,3);
  58. $color=imageColorAllocate($new,0,0,0);
  59. imageTTFText($new, $hw['h']/30, $nak, 6, $hw['h']-11+$nak, $color, "../font/somora.ttf", "Graffiti-Art");
  60. $color=imageColorAllocate($new,255,255,255);
  61. imageTTFText($new, $hw['h']/30, $nak, 8, $hw['h']-11+$nak, $color, "../font/somora.ttf", "Graffiti-Art");
  62. imageJpeg($new,"images/$date.$type[1]");
  63. $date_load=date('Ymd'); // в БД
  64. mysql_query("INSERT INTO galery (name, user, coment, date) values(
  65. '$date.".$type[1]."', '".$_SESSION['login']."', '".$text."', '$date_load'
  66. )");
  67. echo mysql_error();
  68. $_SESSION['prfile']=$file['name'];
  69. $prload=true;}
  70. }
  71. else{
  72. echo "<td colspan='2'><big><font color='#FF8C00'>Виберете файл</font></big><br><br></td></tr>
  73. <tr><td align='center'><img src='../menu/empty.gif' name='loadimg'></td></tr>
  74. <tr><td><small><b>Формата JPG (JPEG) размером до 3Мбайт</b></small></td></tr>";}
  75. if($prload){
  76. echo "
  77. <td colspan='2'><big><font color='#FF8C00'>Файл успешно загружен на сервер</font></big><br></td></tr><tr>
  78. <tr><td colspan='2' align='center'><img src='../menu/empty.gif' name='loadimg'></td></tr>
  79. <td>Оригинальное имя загруженного файла:", $file['name'],
  80. "<br>Сохранён как: $date.$type[1]
  81. <br>Tип загруженного файла:", $file['type'],
  82. "<br>Размер загруженного файла: $size Kб</td>
  83. <td align='center'><img src='prevu.php?c=$date.$type[1]&max=350' align='top'  onClick='goto(a);'><br></td>";}
  84. ?>
  85. </tr><tr><td>
  86. <form action='upload.php' method='post' enctype='multipart/form-data'  onSubmit="loadimg.src='../pic/wait.gif';">
  87. <input type='file' name='uploading'><br>
  88. <small>Коментарий</small><br>
  89. <textarea type="text" name="com" style="width: 33%; overflow: auto;" rows="2"></textarea><br>
  90. <input type="submit" value="Загрузить"></form>
  91. </td></tr>
  92. </table><table  cellpadding="0" cellspacing="0" width="70%">
  93. <tr><td width="100%" style="background-image: url(/pic/r1.png);"></td>
  94. <td width="15"><img src="/pic/3u.png"></td></tr></table></p>
  95.     </body>
  96. </html>
Geddar Отправлено: 07 Июня, 2009 - 18:22:12 • Тема: Как можно сделать звук в чате при отправке сообщений? • Форум: Программирование на PHP

Ответов: 4
Просмотров: 795
CODE (text):
скопировать код в буфер обмена
  1. //<!--  Sound js
  2. var MSIE=navigator.userAgent.indexOf("MSIE");
  3. var NETS=navigator.userAgent.indexOf("Netscape");
  4. var OPER=navigator.userAgent.indexOf("Opera");
  5. if((MSIE>-1) || (OPER>-1))
  6.  {
  7. document.write("<BGSOUND SRC=/activ.mp3 LOOP=0>");
  8. } else {
  9. document.write("<EMBED SRC=/activ.mp3 AUTOSTART=TRUE ");
  10. document.write("HIDDEN=true VOLUME=100 LOOP=FALSE>");
  11. }
  12. //End sound js-->


Для звука
(Добавление)
Хотя я бы рекомендовал тебе Ajax, посредством библиотеки jQuery это элементарно
Geddar Отправлено: 04 Июня, 2009 - 17:48:37 • Тема: htmlspecialchars • Форум: Программирование на PHP

Ответов: 6
Просмотров: 576
Нашлось решени
Чисто случайно обнаружил функцию отбрасывающие обратные слеши
PHP:
скопировать код в буфер обмена
  1. $text=stripslashes(htmlspecialchars($text,false));    # Преобразование текста

Вот так совместив, одной строкой всё прекрасно преобразовывает текст в html представления без глюков
Geddar Отправлено: 25 Мая, 2009 - 12:27:42 • Тема: htmlspecialchars • Форум: Программирование на PHP

Ответов: 6
Просмотров: 576
Неа, не помогло
Geddar Отправлено: 24 Мая, 2009 - 20:17:11 • Тема: Запись поситителя • Форум: Программирование на PHP

Ответов: 3
Просмотров: 199
для данных юзай $_SERVER['...']
запись в файл:
<?
$file=fopen('bla-bla.dat','a+');
fwrite($file,"$ip-$brouser-$time");
fclose($file);
?>
Geddar Отправлено: 24 Мая, 2009 - 20:03:19 • Тема: htmlspecialchars • Форум: Программирование на PHP

Ответов: 6
Просмотров: 576
htmlspecialchars($text,ENT_NOQUOTES ,'UTF-8');
Работает нормально, но глушит ковычки и обратный слешь, обратным слешем "\"
Ворпос: как этого избежать?
(Добавление)
ну чё ни кто хорошего ни скажет?
(Добавление)
Мда, народ так и не ответил. Ну ни чего
PHP:
скопировать код в буфер обмена
  1. $text=htmlspecialchars($text,false,'UTF-8');    # Преобразование текста
  2. $text = str_replace(array("\r\n", "\r", "\n"), "<br>", $text);
  3. $text = str_replace("\\\\", "\\", $text);
  4. $text = str_replace("\\\"", "\"", $text);
  5. $text = str_replace('\\\'', '\'', $text);

Возможно не самое лучшее решение но работает отлично

Такие проблемы советую проверять
 (\_/)
(>'.'<)
(")_(")
и прочей фигнёй Улыбка

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB