PHP.SU

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

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

> Найдено сообщений: 15
Ильин Отправлено: 20 Мая, 2012 - 13:56:09 • Тема: Калькулятор (php) • Форум: Хранение данных, их вывод и обработка

Ответов: 0
Просмотров: 2086
Здравствуйте!
У меня возникла проблема! Нашел файл калькулятора price_calc.php . Но сайт на котором он был, переделали и калькулятора уже там нет(
Стоит задача создать тот же калькулятор.
Имеется файл и код.
Не знаю как вытащить html (сайт работает на joomla)

Вот код из файла:

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. $db=file("lock");
  4.  if( $db[0] > time() - 5*60) {
  5. //$file=file_get_contents("back.htm");
  6. echo $file;
  7. echo "<script type=\"text/javascript\">alert('Сообщение не будет отправлено, попробуйте позже!');</script>";
  8.     }
  9. else if(isset($_POST['fio']) && !empty($_POST['phone']) && isset($_POST['email']) && !empty($_POST['email']) && isset($_POST['city']) && !empty($_POST['city'])) {
  10. $_POST['fio']    = htmlspecialchars(iconv( "windows-1251","utf-8", $_POST['fio']),ENT_QUOTES);
  11. $_POST['phone']= htmlspecialchars(iconv("windows-1251","utf-8",$_POST['phone']),ENT_QUOTES);
  12. $_POST['email']    = htmlspecialchars(iconv("windows-1251","utf-8",$_POST['email']),ENT_QUOTES);
  13. $_POST['city']    = htmlspecialchars(iconv("windows-1251","utf-8",$_POST['city']),ENT_QUOTES);
  14. $_POST['s'] = htmlspecialchars($_POST['s'],ENT_QUOTES);
  15. $_POST['type'] = htmlspecialchars(iconv("windows-1251","utf-8",$_POST['type']),ENT_QUOTES);
  16. $_POST['style'] = htmlspecialchars(iconv("windows-1251","utf-8",$_POST['style']),ENT_QUOTES);
  17. $_POST['location'] = htmlspecialchars(iconv("windows-1251","utf-8",$_POST['location']),ENT_QUOTES);
  18.  
  19. if($_POST['s'] == "eskiz") {
  20.    $sostav = "<p>Состав проекта:<br/>1 Титульный лист<br/>2 Замерный план<br/>3 План мебели- без размеров<br/>4 визуализация</p>";
  21. }
  22.  
  23.  
  24. if($_POST['s'] == "work") {
  25.    $sostav = "<p>Состав проекта:<br/>1 Титульный лист<br/>2 Экспликация<br/>3 Замерный план<br/>4 План перепланировки план перегородок<br/>5 План мебели<br/>6 Зонирование помещения<br/>7 План водоснабжения<br/>8 План напольных покрытий<br/>9 План потолочных конструкций<br/>10 План потолочных светильников<br/>11 План размещения выключателей<br/>12 План размещения розеток<br/>13 Развертки стен<br/>14 Визуализация</p>";
  26. }
  27.  
  28. if($_POST['s'] == "chertej") {
  29.    $sostav = "<p>Состав проекта:<br/>1 Титульный лист<br/>2 Экспликация<br/>3 Замерный план<br/>4 План перепланировки план перегородок<br/>5 План мебели<br/>6 Зонирование помещения<br/>7 План водоснабжения<br/>8 План напольных покрытий<br/>9 План потолочных конструкций<br/>10 План потолочных светильников<br/>11 План размещения выключателей<br/>12 План размещения розеток<br/>13 Развертки стен</p>";
  30.  
  31. }
  32.  
  33.  
  34.  
  35.  
  36. $_POST['z']    = htmlspecialchars($_POST['z'],ENT_QUOTES);
  37.  
  38. $message="<html><head><title>a-dergunov.ru</title>
  39. <meta http-equiv=\"Content-Type\" content=\"text/html; charset=cp1251\">
  40. </head><body>";
  41. $message.="<br>Сообщение с сайта a-dergunov.ru от  ".$_POST['fio'];
  42. $message.="<br>Как с ним связаться: ".$_POST['phone'];
  43. $message.="<br>Город: ".$_POST['city'];
  44. $message.="<br>Email: ".$_POST['email'];
  45. $message.="<br>Тип: ".$_POST['type'];
  46. $message.="<br>Стиль: ".$_POST['style'];
  47. $message.="<br>Расположение: ".$_POST['location'];
  48. $message.="<br>Метраж: ".$_POST['metraj'];
  49. $message.="<br>Сумма: ".$_POST['z'];
  50. $message.= $sostav;
  51. $message.="</body></html>";
  52. $headers  = "From: a-dergunov.ru <kapitel@kapitel.pro>\r\nReturn-Path: kapitel@kapitel.pro\r\nContent-type: text/html; charset=utf-8\r\n";
  53.  
  54.  
  55.  
  56. $to="kapitel@kapitel.pro";
  57. $sostav ="<html><head><title>a-dergunov.ru</title>
  58. <meta http-equiv=\"Content-Type\" content=\"text/html; charset=cp1251\">
  59. </head><body>".$sostav."</body></html>";
  60.  
  61. //$to="Nemo012@yandex.ru";
  62. mail($to,"Message from A-dergunov.ru",$message,$headers);
  63. $message="<html><head><title>a-dergunov.ru</title>
  64. <meta http-equiv=\"Content-Type\" content=\"text/html; charset=cp1251\">
  65. </head><body>";
  66. $message.="<br>Сообщение с сайта a-dergunov.ru от  ".$_POST['fio'];
  67. $message.="<br>Тип: ".$_POST['type'];
  68. $message.="<br>Стиль: ".$_POST['style'];
  69. $message.="<br>Расположение: ".$_POST['location'];
  70. $message.="<br>Метраж: ".$_POST['metraj'];
  71. $message.="<br>Сумма: ".$_POST['z'];
  72. $message.= $sostav;
  73. $message.="</body></html>";
  74.  
  75. mail($_POST['email'],"Предложение от Арт студии Капитель",$message,$headers);
  76. //$file=file_get_contents("index.html");
  77. //echo $file;
  78. $str = "Ваш запрос был отправлен!";
  79.  
  80. echo "<html><head><title>a-dergunov.ru</title>
  81. <script type=\"text/javascript\">alert('".iconv("utf-8", "windows-1251",$str)."');
  82. location = \"http://a-dergunov.ru/index.php?option=com_content&task=view&id=8&Itemid=38\";
  83. </script></head><body></body></html>";
  84.  
  85. $f=fopen( "lock", "w" );
  86. fputs($f,time());
  87. fclose($f);
  88. }
  89.  
  90. else {
  91. //header("Location: /index.php?option=com_content&task=view&id=8&Itemid=38");
  92. //$file=file_get_contents("back.html");
  93. //echo $file;
  94. $str = "Сообщение не будет отправлено, проверьте введенную информацию";
  95. echo "<html><head><title>a-dergunov.ru</title>
  96. <script type=\"text/javascript\">alert('".iconv("utf-8", "windows-1251",$str)."!');
  97. location = \"http://a-dergunov.ru/index.php?option=com_content&task=view&id=8&Itemid=38\";
  98. </script></head><body></body></html>";
  99.  
  100. }
  101. ?>


Заранее большое спасибо за помощь.
Ильин Отправлено: 30 Января, 2012 - 09:27:35 • Тема: Дни недели на русском. • Форум: Вопросы новичков

Ответов: 1
Просмотров: 1379
Здравствуйте.
Довел проект почти до завершения, но вот не задача( все даты на англ.
Один кусочек кода уже перевел. Помогли ребята на форуме.
Как это выглядит:

Было
CODE (htmlphp):
скопировать код в буфер обмена
  1.  <?php
  2.                                         $day = strtotime("next Monday");
  3.                                         for ($i=1; $i <= 7; $i++) {
  4.                                                 $weekday = date("w",$day);
  5.                                                 $field_open = $weekday.'_open_time';
  6.                                                 $field_close = $weekday.'_close_time';
  7.                                                 echo "<tr><td><div class='bold'>".date("l",$day)."</div></td><td class='padding-left-20'>".
  8.                                                 date('H:i',strtotime($row->$field_open))." - ".date('H:i',strtotime($row->$field_close)).
  9.                                                 "<br/></td></tr>";
  10.                                                 $day = $day + 86400;
  11.                                         }
  12.                                  ?>    


Стало

CODE (htmlphp):
скопировать код в буфер обмена
  1.  <?PHP  
  2. $sContent = '';
  3. $day = strtotime("next Monday");
  4. for ($i=1; $i <= 7; $i++) {                    
  5. $weekday = date("w",$day);
  6. $field_open = $weekday.'_open_time';
  7. $field_close = $weekday.'_close_time';
  8. $sContent .= "<tr><td><div class='bold'>".date("l",$day)."</div></td><td class='padding-left-20'>".
  9. date('H:i',strtotime($row->$field_open))." - ".date('H:i',strtotime($row->$field_close)).
  10. "<br/></td></tr>";
  11. $day = $day + 86400;
  12. }
  13. $rgSearch = array('Monday',
  14. 'Tuesday',
  15. 'Wednesday',
  16. 'Thursday',
  17. 'Friday',
  18. 'Saturday',
  19. 'Sunday'
  20. );
  21. $rgReplace = array('Понедельник',
  22. 'Вторник',
  23. 'Среда',
  24. 'Четверг',
  25. 'Пятница',
  26. 'Суббота',
  27. 'Воскресенье'
  28. );
  29. echo str_replace($rgSearch, $rgReplace, $sContent);
  30. ?>


Все работает нормально) Большое спасибо вам форумчане, за это.

Теперь мне нужно аналогичным решением прогнать вот этот код:
CODE (htmlphp):
скопировать код в буфер обмена
  1. function getWeekdays_select($outlet_closeday, $status=''){
  2.         $outlet_closeday=explode(",",$outlet_closeday);
  3.         $day = strtotime("next Monday");
  4.         for ($i=1; $i <= 7; $i++) {
  5.                 echo"<input type='checkbox' name='outlet_closeday_".$i."' value='".date("w",$day)."' ";
  6.                
  7.                 if (in_array(date("w",$day), $outlet_closeday)) {
  8.                         echo "checked='checked'";
  9.                 }
  10.                 echo $status." >&nbsp;".date("D",$day)."&nbsp;&nbsp;";
  11.                 $day = $day + 86400;
  12.         }
  13. }


Выдает:
Mon Tue Wed Thu Fri Sat Sun

Нужно:
Пн Вт Ср Чт Пт Сб Вс

Пробовал сделать вот так:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. function getWeekdays_select($outlet_closeday, $status=''){
  3.         $outlet_closeday=explode(",",$outlet_closeday);
  4. $sContent = '';
  5. $day = strtotime("next Monday");
  6.         for ($i=1; $i <= 7; $i++) {
  7.         $sContent .= <input type='checkbox' name='outlet_closeday_".$i."' value='".date("w",$day)."' ";
  8.                
  9.                 if (in_array(date("w",$day), $outlet_closeday)) {
  10.                         echo "checked='checked'";
  11.                 }
  12.                 echo $status." >&nbsp;".date("D",$day)."&nbsp;&nbsp;";
  13.                 $day = $day + 86400;
  14.         }
  15. $rgSearch = array('Mon',
  16. 'Tue',
  17. 'Wed',
  18. 'Thu',
  19. 'Fri',
  20. 'Sat',
  21. 'Sun'
  22. );
  23. $rgReplace = array('Пн',
  24. 'Вт',
  25. 'Ср',
  26. 'Чт',
  27. 'ПТ',
  28. 'Сб',
  29. 'Вс'
  30. );
  31. echo str_replace($rgSearch, $rgReplace, $sContent);
  32.  


Ничего не вышло((
Что делать ?
Заранее всем спасибо)
Ильин Отправлено: 26 Января, 2012 - 18:41:06 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
armancho7777777
Я делал все по аналогическому решению, ноу меня ничего не вышло(
Ильин Отправлено: 26 Января, 2012 - 16:06:25 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
armancho7777777 Решил проблему.
Перекодировал файлик.
Спасибо за помощь)
(Добавление)
snikers987
Слушайте, а как теперь по тому же способу.
Перевести вот этот код:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2.  
  3. function getWeekdays_select($outlet_closeday, $status=''){
  4.         $outlet_closeday=explode(",",$outlet_closeday);
  5.         $day = strtotime("next Monday");
  6.         for ($i=1; $i <= 7; $i++) {
  7.                 echo"<input type='checkbox' name='outlet_closeday_".$i."' value='".date("w",$day)."' ";
  8.                
  9.                 if (in_array(date("w",$day), $outlet_closeday)) {
  10.                         echo "checked='checked'";
  11.                 }
  12.                 echo $status." >&nbsp;".date("D",$day)."&nbsp;&nbsp;";
  13.                 $day = $day + 86400;
  14.         }
  15. }


Отображает: Mon Tue Wed Thu Fri Sat Sun
Нужно: Пн Вт Ср Чт Пт Сб Вс
Ильин Отправлено: 26 Января, 2012 - 13:09:04 • Тема: Проблема с кодировкой. • Форум: Кодировки и все смежное

Ответов: 4
Просмотров: 1872
snikers987 А как ?
Ильин Отправлено: 26 Января, 2012 - 12:28:52 • Тема: Проблема с кодировкой. • Форум: Кодировки и все смежное

Ответов: 4
Просмотров: 1872
Вставил вот этот код:
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?PHP  
  2. $sContent = '';
  3. $day = strtotime("next Monday");
  4. for ($i=1; $i <= 7; $i++) {                    
  5. $weekday = date("w",$day);
  6. $field_open = $weekday.'_open_time';
  7. $field_close = $weekday.'_close_time';
  8. $sContent .= "<tr><td><div class='bold'>".date("l",$day)."</div></td><td class='padding-left-20'>".
  9. date('H:i',strtotime($row->$field_open))." - ".date('H:i',strtotime($row->$field_close)).
  10. "<br/></td></tr>";
  11. $day = $day + 86400;
  12. }
  13. $rgSearch = array('Monday',
  14. 'Tuesday',
  15. 'Wednesday',
  16. 'Thursday',
  17. 'Friday',
  18. 'Saturday',
  19. 'Sunday'
  20. );
  21. $rgReplace = array('Понедельник',
  22. 'Вторник',
  23. 'Среда',
  24. 'Четверг',
  25. 'Пятница',
  26. 'Суббота',
  27. 'Воскресенье'
  28. );
  29. echo str_replace($rgSearch, $rgReplace, $sContent);
  30. ?>

На локальном сервере, все работало нормально, слова отображались (Понедельник, вторник....).
Теперь когда сайт перенес на хостинг.
Вместо слов (Понедельник, вторник....) отображаются квадратики с вопросами.
Менял кодировку на koi8-r, Дни недели отображаются нормально, а все остальное в квадратиках.
На сайте есть код, который как мне кажется отвечает за кодировку.
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. // DB connect
  3. $link = mysql_connect($settings['dbHost'].':'.$settings['dbPort'], $settings['dbUser'], $settings['dbPass']);
  4.       mysql_query("SET NAMES 'utf8'");
  5.       mysql_query("SET CHARACTER SET 'utf8'");
  6. if (!$link)
  7.        die('Not connected: ' . mysql_error());
  8. if (!mysql_select_db($settings['dbName']))
  9.        die ("Can't use ".$settings['dbName'].": " . mysql_error());
  10. ?>


Что можете посоветовать??
Заранее всем благодарен.
Ильин Отправлено: 26 Января, 2012 - 10:59:52 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
armancho7777777 пишет:
У Вас в БД utf-8 какой именно?
utf8_general_ci ?

Да.
Ильин Отправлено: 26 Января, 2012 - 10:49:32 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
armancho7777777 пишет:
А Вам написал, что сделать.
После 5 строки допишите это:
PHP:
скопировать код в буфер обмена
  1.  
  2. mysql_query('SET COLLATION_CONNECTION="utf8_general_ci"',$db);
  3. mysql_query ("set character_set_client='utf8'",$db);
  4. mysql_query ("set character_set_results='utf8'",$db);
  5.  


Не помогло(

Warning: mysql_query(): supplied argument is not a valid MySQL-Link resource in /home/адрес/data/www/адрес сайта/web/classes/connect.db.php on line 6
Ильин Отправлено: 26 Января, 2012 - 10:37:28 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
armancho7777777 пишет:
Дата из базы берётся?
Сразу после подключения к БД должно быть это:
PHP:
скопировать код в буфер обмена
  1.  
  2. mysql_query('SET NAMES utf8',$db);          
  3. mysql_query('SET CHARACTER SET utf8',$db);  
  4. mysql_query('SET COLLATION_CONNECTION="utf8_general_ci"',$db);
  5. mysql_query ("set character_set_client='utf8'",$db);
  6. mysql_query ("set character_set_results='utf8'",$db);
  7.  



Скорее всего, да.
Посмотрите код, может он вам чем нибудь поможет.
CODE (htmlphp):
скопировать код в буфер обмена
  1. <?php
  2. // DB connect
  3. $link = mysql_connect($settings['dbHost'].':'.$settings['dbPort'], $settings['dbUser'], $settings['dbPass']);
  4.        mysql_query("SET NAMES 'utf8'");
  5.        mysql_query("SET CHARACTER SET 'utf8'");
  6. if (!$link)
  7.         die('Not connected: ' . mysql_error());
  8. if (!mysql_select_db($settings['dbName']))
  9.         die ("Can't use ".$settings['dbName'].": " . mysql_error());
  10. ?>
Ильин Отправлено: 26 Января, 2012 - 10:18:40 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
armancho7777777 utf-8
Ильин Отправлено: 26 Января, 2012 - 09:48:59 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
snikers987,armancho7777777,Plusminuz Слушайте, теперь у меня появилась новая проблема.
Когда я собрал все вместе у меня вместо нормальных русских слов (Понедельник, вторник...) Появились квадратики со знаком вопросов.
Поменял кодировку на koi8-r, все в квадратиках кроме (понедельник, вторник....)
Что делать?
Можно ли на определенную функцию установить определенную кодировку?
Ильин Отправлено: 24 Января, 2012 - 15:59:43 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
[quote=snikers987]
Большое спасибо, дружище)
Ильин Отправлено: 24 Января, 2012 - 15:56:08 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
[quote=snikers987]
Дружище, слушай все ровно не понимаю.
Напишите мне пожалуйста то что нужно вставить в место:
<?php
$day = strtotime("next Monday");
for ($i=1; $i <= 7; $i++) {
$weekday = date("w",$day);
$field_open = $weekday.'_open_time';
$field_close = $weekday.'_close_time';
echo "<tr><td><div class='bold'>".date("l",$day)."</div></td><td class='padding-left-20'>".
date('H:i',strtotime($row->$field_open))." - ".date('H:i',strtotime($row->$field_close)).
"<br/></td></tr>";
$day = $day + 86400;
}
?>


Нужен прямо, чистый код ибо сам в php вообще ничего не понимаю.
Ильин Отправлено: 24 Января, 2012 - 15:47:39 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
Большое спасибо за ответы.
Только почему-то отображается вот так:
Понедельник
03:00 - 03:00
Понедельник
03:00 - 03:00
Вторник
03:00 - 03:00
Понедельник
03:00 - 03:00
Вторник
03:00 - 03:00
Среда
03:00 - 03:00
Понедельник
03:00 - 03:00
Вторник
03:00 - 03:00
Среда
03:00 - 03:00
Четверг
03:00 - 03:00
Понедельник
03:00 - 03:00
Вторник
03:00 - 03:00
Среда
03:00 - 03:00
Четверг
03:00 - 03:00
Пятница
03:00 - 03:00
Понедельник
03:00 - 03:00
Вторник
03:00 - 03:00
Среда
03:00 - 03:00
Четверг
03:00 - 03:00
Пятница
03:00 - 03:00
Суббота
03:00 - 03:00
Понедельник
03:00 - 03:00
Вторник
03:00 - 03:00
Среда
03:00 - 03:00
Четверг
03:00 - 03:00
Пятница
03:00 - 03:00
Суббота
03:00 - 03:00
Воскресенье
03:00 - 03:00


Скажите, а можно ли решить эту задачу через setlocale ?
Ильин Отправлено: 24 Января, 2012 - 15:11:08 • Тема: Дата на русском • Форум: Хранение данных, их вывод и обработка

Ответов: 27
Просмотров: 6950
Здравствуйте!
Ребятки, нужна ваша помощь.
Есть код:
CODE (text):
скопировать код в буфер обмена
  1.  <?php  
  2. $day = strtotime("next Monday");
  3. for ($i=1; $i <= 7; $i++) {                    
  4. $weekday = date("w",$day);
  5. $field_open = $weekday.'_open_time';
  6. $field_close = $weekday.'_close_time';
  7. echo "<tr><td><div class='bold'>".date("l",$day)."</div></td><td class='padding-left-20'>".
  8. date('H:i',strtotime($row->$field_open))." - ".date('H:i',strtotime($row->$field_close)).
  9. "<br/></td></tr>";
  10. $day = $day + 86400;
  11. }
  12. ?>


Отображается он следующим образом:
Monday 00:00 - 00:00
Tuesday 00:00 - 00:00
Wednesday 00:00 - 00:00
Thursday 00:00 - 00:00
Friday 00:00 - 00:00
Saturday 00:00 - 00:00
Sunday 00:00 - 00:00

Нужно сделать вот так:
Понедельник 00:00 - 00:00
Вторник 00:00 - 00:00
Среда 00:00 - 00:00
Четверг 00:00 - 00:00
Пятница 00:00 - 00:00
Суббота 00:00 - 00:00
Воскресенье 00:00 - 00:00



Жду от Вас конкретного решения.
Заранее спасибо.

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB