PHP.SU

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

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

> Найдено сообщений: 28
Nooo Отправлено: 03 Июля, 2011 - 11:17:53 • Тема: Повторение вывода таблици • Форум: Хранение данных, их вывод и обработка

Ответов: 11
Просмотров: 2963
Все получилось организовать цикл, но теперь встала другая проблема которую не знаю как решить,теперь не работает вывод новой записи из базы, то есть если у меня в таблице 5 строк тон выводит только 4, как щас у меня на 1 акк заказаны сервера их ид равны 40-45 ,но выводит не 5 заказанных серверов а только 4 ,новый сервер который только что заказал(id 45 ) не отображается, можете помочь?

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. if( ! defined( 'DATALIFEENGINE' ) ) {
  3.         die( "Hacking attempt!" );
  4. }
  5. $viewserv = $db->query("SELECT * FROM ".USERPREFIX."_server WHERE user='{$_SESSION['dle_user_id']}'");
  6.  
  7.  
  8.  
  9. if($db->get_row($viewserv) > '0') {
  10. $row = $db->get_array($viewserv);
  11. do{
  12.  
  13.  $tpl->load_template( 'shop_view.tpl' );
  14.  
  15.         switch ($row['locations']) {
  16.       case 'xxx': $locations = 'MSK ЦОД xxxx.ru'; break;
  17.    }
  18.        
  19.         if($row['status'] == '1') {
  20. $status_s = "<a href='/panel/'> Панель управления</a> | <a href='/extend/$row[id_server]'> Продлить</a> ";
  21.         }else{
  22. $status_s = "<a href='/order/$row[id_server]/'> Оплатить</a>";
  23.         }
  24.  
  25. switch ($row['tarif']) {
  26.       case '15': $tarif = 'ClanWar (15рублей 1 слот)'; break;
  27.       case '20': $tarif = "Normal (20рублей 1 слот)"; break;
  28.       case '25': $tarif = "GreatServer (25рублей 1 слот)"; break;
  29.    }  
  30. $type_server = $row['type_server'] == 'privat' ? 'Приватный' : 'Публичный';;   
  31. $view = <<<HTML
  32.  <TABLE align='center' width='95%' border='1' cellspacing='0' cellpadding='0'>
  33.                 <tr>
  34.                   <td><b> ID сервера:</b></td>
  35.                   <td> # $row[id_server]</td>
  36.                   </tr>
  37.                 <tr>
  38.                   <td width='150' hight='150'><b> Локация сервера:</b></td>
  39.                   <td> $locations </td>
  40.                 </tr>
  41.                 <tr>
  42.                   <td><b> Тип игры:</b></td>
  43.                   <td> $row[type_game] </td>
  44.                   </tr>
  45.                   <tr>
  46.                   <td><b> Тариф:</b></td>
  47.                   <td> $tarif </td>
  48.                   </tr>
  49.                 <tr>
  50.                   <td><b> Тип сервера:</b></td>
  51.                   <td> $type_server </td>
  52.                   </tr>
  53.                 <tr>
  54.                   <td><b> Слоты:</b></td>
  55.                   <td> $row[slots] </td>
  56.                 </tr>
  57.                 <tr>
  58.                   <td><b> Цена сервера: </b></td>
  59.                   <td> $row[price] рублей </td>
  60.                 </tr>
  61.                 <tr>
  62.                   <td><b> Статус:</b></td>
  63.                   <td> $status_s </td>
  64.                 </tr>
  65.                 </TABLE><br>
  66. HTML;
  67.  
  68. $tpl->set('{shop_view}',$view);
  69.         $tpl->compile('content');
  70.         $tpl->clear();
  71.  
  72. } while( $row = $db->get_array($viewserv) );
  73.  
  74. }
  75.  
  76. ?>
Nooo Отправлено: 28 Июня, 2011 - 10:33:20 • Тема: Повторение вывода таблици • Форум: Хранение данных, их вывод и обработка

Ответов: 11
Просмотров: 2963
нет писал я,просто я делаю это как модуль для dle но с циклом проблема

Саныч пишет:
Nooo пишет:
Ой походу сервер у хоста лег

нет, это не сервер, просто обработка кода заняла более 30 секунд


да не у меня на этом сервера 2 сайта на разных аккаунтах оба лежат с ошибкой

504 Gateway Time-out
nginx
Nooo Отправлено: 28 Июня, 2011 - 10:14:56 • Тема: Повторение вывода таблици • Форум: Хранение данных, их вывод и обработка

Ответов: 11
Просмотров: 2963
За это спасибо)
но теперь появилась другая ошибка.
Fatal error: Maximum execution time of 30 seconds exceeded in /var/www/login/data/www/login.ru /engine/classes/templates.class. php on line 36

Ой походу сервер у хоста лег Ниндзя
Nooo Отправлено: 28 Июня, 2011 - 09:27:10 • Тема: Повторение вывода таблици • Форум: Хранение данных, их вывод и обработка

Ответов: 11
Просмотров: 2963
Здравствуйте можете помочь разобраться с выводом таблицы определенное количество раз?

У меня есть форма заказа от куда данные попадают в бд и дальше скрипт заказа переводит на просмотр заказанного, но у меня получается вывести только один заказ первый ,а мне нужно вывести все заказы данного пользователя, все что пробовал не что не помогает... Помогите пожалуйста..

Модуль просмотра:
PHP:
скопировать код в буфер обмена
  1.  
  2. $viewserv = $db->super_query("SELECT * FROM ".USERPREFIX."_server WHERE user='{$_SESSION['dle_user_id']}'");
  3.  
  4. $tpl->load_template( 'shop_view.tpl' );
  5.  
  6. $status_shop = $viewserv['status'];
  7.  
  8. if($status_shop == 1) {
  9.  
  10. $status_s = "<a href='/panel/'> Панель управления</a> | <a href='/oplata_2/'> Продлить</a> ";
  11. }
  12. else
  13. {
  14. $status_s = "<a href='/oplata/'> Оплатить</a>";
  15. }
  16.  
  17. $loca = $viewserv['locations'];
  18. $price = $viewserv['price'];
  19. $type_game = $viewserv['type_game'];
  20.  
  21. if($viewserv['type_server'] == 'privat') {
  22. $type_server = 'Приватный';
  23. }else{
  24. if($viewserv['type_server'] == 'pub'){
  25. $type_server = 'Публичный';
  26. }
  27. }
  28. if($viewserv['tarif'] == '15') {
  29. $tarif = 'ClanWar (15рублей 1 слот)';
  30. }else{
  31. if($viewserv['tarif'] == '20') {
  32. $tarif = 'Normal (20рублей 1 слот)';
  33. }else
  34. if($viewserv['tarif'] == '25') {
  35. $tarif = "GreatServer (25рублей 1 слот)";
  36. }
  37. }
  38.  
  39. $slots = $viewserv['slots'];
  40.  
  41.  
  42. $tpl->set( '{status_server}', $status_s);
  43. $tpl->set( '{loca}', $loca );
  44. $tpl->set( '{price}', $price );
  45. $tpl->set( '{type_game}', $type_game );
  46. $tpl->set( '{type_server}', $type_server );
  47. $tpl->set( '{tarif}', $tarif );
  48. $tpl->set( '{slots}', $slots );
  49. $tpl->compile( 'content' );
  50. $tpl->clear();
  51.  


Шаблон shop_view.tpl:
CODE (html):
скопировать код в буфер обмена
  1. <TABLE align="center" width="95%" border="1" cellspacing="0" cellpadding="0">
  2. <tr>
  3.       <td width="110" hight="150"><b> Локация сервера:</b></td>
  4.       <td> {loca}</td>
  5.     </tr>
  6.             <tr>
  7.       <td><b> Тип игры:</b></td>
  8.       <td> {type_game}</td>
  9.     </tr>
  10.             <tr>
  11.       <td><b> Тариф:</b></td>
  12.       <td> {tarif}</td>
  13.     </tr>
  14.         <tr>
  15.       <td><b> Тип сервера:</b></td>
  16.       <td> {type_server}</td>
  17.     </tr>
  18.         <tr>
  19.       <td><b> Слоты:</b></td>
  20.       <td> {slots}</td>
  21.     </tr>
  22.     <tr>
  23.       <td><b> Цена сервера: </b></td>
  24.       <td> {price} рублей</td>
  25.     </tr>
  26.         <tr>
  27.       <td><b> Статус:</b></td>
  28.       <td> {status_server} </td>
  29.     </tr>
  30. </TABLE>
  31. <br>
Nooo Отправлено: 07 Июня, 2011 - 16:11:13 • Тема: Новости сайта • Форум: Если скрипт не работает

Ответов: 8
Просмотров: 3167
как бы вот есть индоксовый файл который выводит это так (шаблонизатор)
PHP:
скопировать код в буфер обмена
  1. $tpl->set('{content}', news() );


Если мы перейдем просто на файл http://test1[dot]ru/news.php то страница будет пустая... то есть он открывается только http://test1[dot]ru/index.php дальше если мы просто объединим эти 2 файла в один и он будет иметь вид:

PHP:
скопировать код в буфер обмена
  1. <?
  2. include_once '/etc/data/config.php';
  3.  
  4. echo '<html><head><title>'.$config[site_name].'</title></head></html>';
  5.  
  6.  
  7. function news() {
  8.  $news = '';
  9.  
  10. if (isset($_GET['cat'])) {$cat = $_GET['cat']; }
  11. if (!isset($cat)) {$cat = 1;}
  12.  
  13. if (!preg_match("|^[\d]+$|", $cat)) {
  14. exit ("<p>Неверный формат запроса! Проверьте URL!");
  15. }
  16.  
  17. $result = mysql_query("SELECT * FROM categories WHERE id='$cat'");
  18.  
  19. if (!$result)
  20. {
  21. echo "<p>Ошибка базы данных. Напишите об этом администратору ".$config['admin_email']."<br> <strong>Код ошибки:</strong></p>";
  22. }
  23.  
  24. if (mysql_num_rows($result) > 0)
  25.  
  26. {
  27. $myrow = mysql_fetch_array($result);
  28.  
  29. }
  30.  
  31. else
  32. {
  33. echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
  34. exit();
  35. }      
  36.                
  37. $result77 = mysql_query("SELECT str FROM options");
  38. $myrow77 = mysql_fetch_array($result77);
  39. $num = $myrow77["str"];
  40. @$page = $_GET['page'];
  41. $result00 = mysql_query("SELECT COUNT(*) FROM data WHERE secret=0 AND cat='$cat'");
  42. $temp = mysql_fetch_array($result00);
  43. $posts = $temp[0];
  44. $total = (($posts - 1) / $num) + 1;
  45. $total =  intval($total);
  46. $page = intval($page);
  47. if(empty($page) or $page < 0) $page = 1;
  48.   if($page > $total) $page = $total;
  49. $start = $page * $num - $num;  
  50.                
  51.                
  52. $result = mysql_query("SELECT id,title,description,date,author,mini_img,view,rating,q_vote FROM data WHERE secret=0 AND cat='$cat' ORDER BY id LIMIT $start, $num");
  53.  
  54. if (!$result)
  55. {
  56. echo "<p>Ошибка базы данных. Напишите об этом администратору ".$config['admin_email']." <br> <strong>Код ошибки:</strong></p>";
  57. }
  58.  
  59. if (mysql_num_rows($result) > 0)
  60.  
  61. {
  62. $myrow = mysql_fetch_array($result);
  63.  
  64. do
  65. {
  66.  
  67. $r = $myrow["rating"]/$myrow["q_vote"];
  68. $r = intval($r);
  69.  
  70.  
  71. $news .= "<table align='center' class='post'>";
  72.          
  73.                 $news .= "<tr>";
  74.         $news .= "<td class='post_title'>";
  75.                 $news .= "<p class='post_name'> - <a href='index.php?id=".$myrow["id"]."'>".$myrow["title"]."</a></p>";
  76.                 $news .= "<p class='post_adds'>Автор: ".$myrow['author']." | Дата: ".$myrow["date"]." | Комментарии: </p>";
  77.         $news .= "</tr>";
  78.                 $news .= "<tr>";
  79.         $news .= "<td>".$myrow["description"]." <p class='post_view'>Просмотров: ". $myrow["view"]." &nbsp;&nbsp; Рейтинг: <img src='/templates/default/img/".$r.".gif'></p></td>";
  80.         $news .= "</tr>";
  81.          
  82.                 $news .= "</table><br>";
  83.  
  84.  
  85. }
  86. while ($myrow = mysql_fetch_array($result));
  87.  
  88.  
  89. if ($page != 1) $pervpage = '<a href=index.php?cat='.$cat.'&page=1>Первая</a>  <a href=index.php?cat='.$cat.'&page='. ($page - 1) .'>Предыдущая</a>  ';
  90. if ($page != $total) $nextpage = '  <a href=index.php?cat='.$cat.'&page='. ($page + 1) .'>Следующая</a>  <a href=index.php?cat='.$cat.'&page=' .$total. '>Последняя</a>';
  91.  
  92. if($page - 5 > 0) $page5left = ' <a href=index.php?cat='.$cat.'&page='. ($page - 5) .'>'. ($page - 5) .'</a>  ';
  93. if($page - 4 > 0) $page4left = ' <a href=index.php?cat='.$cat.'&page='. ($page - 4) .'>'. ($page - 4) .'</a>  ';
  94. if($page - 3 > 0) $page3left = ' <a href=index.php?cat='.$cat.'&page='. ($page - 3) .'>'. ($page - 3) .'</a>  ';
  95. if($page - 2 > 0) $page2left = ' <a href=index.php?cat='.$cat.'&page='. ($page - 2) .'>'. ($page - 2) .'</a>  ';
  96. if($page - 1 > 0) $page1left = '<a href=index.php?cat='.$cat.'&page='. ($page - 1) .'>'. ($page - 1) .'</a>  ';
  97.  
  98. if($page + 5 <= $total) $page5right = '  <a href=index.php?cat='.$cat.'&page='. ($page + 5) .'>'. ($page + 5) .'</a>';
  99. if($page + 4 <= $total) $page4right = '  <a href=index.php?cat='.$cat.'&page='. ($page + 4) .'>'. ($page + 4) .'</a>';
  100. if($page + 3 <= $total) $page3right = '  <a href=index.php?cat='.$cat.'&page='. ($page + 3) .'>'. ($page + 3) .'</a>';
  101. if($page + 2 <= $total) $page2right = '  <a href=index.php?cat='.$cat.'&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
  102. if($page + 1 <= $total) $page1right = '  <a href=index.php?cat='.$cat.'&page='. ($page + 1) .'>'. ($page + 1) .'</a>';
  103.  
  104.  
  105. if ($total > 1)
  106. {
  107. Error_Reporting(E_ALL & ~E_NOTICE);
  108.  
  109. $news .= "<div class='pstrnav'>".$pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage."</div>";
  110. }
  111.  
  112.  
  113. }
  114.  
  115. return $news;
  116. }
  117.  
  118. function view_news() {
  119.    
  120.    $news = '';
  121.    
  122.         if (isset($_GET['id'])) {$id = $_GET['id']; }
  123.     if (!isset($id)) {$id = 1;}
  124.      
  125.     if (!preg_match("|^[\d]+$|", $id)) {
  126.     exit ("<p>Неверный формат запроса! Проверьте URL!");
  127.     }
  128.      
  129.     $result = mysql_query("SELECT * FROM data WHERE id='$id'");
  130.      
  131.     if (!$result)
  132.     {
  133.     echo "<p>Ошибка базы данных. Напишите об этом администратору ".$config['admin_email']."<br> <strong>Код ошибки:</strong></p>";
  134.     exit(mysql_error());
  135.     }
  136.      
  137.     if (mysql_num_rows($result) > 0)
  138.      
  139.     {
  140.     $myrow = mysql_fetch_array($result);
  141.     $new_view = $myrow["view"] + 1;
  142.     $update = mysql_query ("UPDATE data SET view='$new_view' WHERE id='$id'");
  143.      
  144.      
  145.     }
  146.      
  147.     else
  148.     {
  149.     echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
  150.     exit();
  151.     }
  152.      
  153.      
  154.     $news .= "<p class='post_title2'>".$myrow["title"]."</p><p class='post_add'>Автор: ".$myrow["author"]."</p><p class='post_add'>Дата: ".$myrow["date"]."</p>".$myrow["text"]."<p class='post_view'>Просмотров: ".$myrow["view"]."</p>";
  155.      
  156.     echo "<p class='post_comment'>Комментарии к этой заметке:</p>";
  157.      
  158.     $result3 = mysql_query ("SELECT * FROM comments WHERE post='$id'");
  159.     if (mysql_num_rows($result3) > 0)
  160.     {
  161.     $myrow3 = mysql_fetch_array($result3);
  162.      
  163.     do
  164.     {
  165.     $news .= "<div class='post_div'><p class='post_comment_add'>Комментарий добавил(а): <strong>".$myrow3["author"]."</strong> <br> Дата: <strong>".$myrow3["date"]."</strong></p>
  166.    <p>".$myrow3["text"]."</p></div>";
  167.      
  168.     }
  169.     while ($myrow3 = mysql_fetch_array($result3));
  170.      
  171.      
  172.     }
  173.      
  174.     $result4 = mysql_query ("SELECT img FROM comments_setting");
  175.     $myrow4 = mysql_fetch_array($result4);
  176.      
  177.     return $news;
  178.     }
  179.      ?>
  180.      
  181.  
  182.  
  183.  


Все функции 1го файла сохранятся он будет полноценно работать открывать категории и т.д... но если мы захотим перейти на полную новость к примеру первую её урл равен http://test1[dot]ru/index.php?id=1 то нечего не изменится как выводил все новости так и остался...
Nooo Отправлено: 07 Июня, 2011 - 15:43:50 • Тема: Новости сайта • Форум: Если скрипт не работает

Ответов: 8
Просмотров: 3167
тем что есть 2 файла это news.php и view_news.php то есть мне нужно что бы эти 2 функции вывод всех новостей на главную и вывод отдельной новости был в одном файле... если их соединить include то там получится каша! а мне нужно примерно следующее....
Если мы нажмем подробнее то у нас перейдет на полную новость с параметром news.php?id=1 а если не будем нажимать подробнее то он останется на news.php?cat=1(вывод всех новостей из категории 1)
возможно так понятнее????
Nooo Отправлено: 07 Июня, 2011 - 13:45:00 • Тема: Новости сайта • Форум: Если скрипт не работает

Ответов: 8
Просмотров: 3167
прежде чем писать бред нужно прочитать и вдуматься в суть вопроса! Хм
Nooo Отправлено: 07 Июня, 2011 - 11:12:59 • Тема: Новости сайта • Форум: Если скрипт не работает

Ответов: 8
Просмотров: 3167
Кто может подсказать как сделать следующие...
Делаю сайт с выводом новостей на главную страницу, мне нужно чтобы в одном файле news.php были 2 функции это вывод всех новостей на главную и просмотр полной новости...
Оба скрипта я написал но соединить их в один файл news.php не могу..... может кто помочь?

Скрипт на вывод всех новостей на главную:
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. function news() {
  4.  $news = '';
  5.  
  6. if (isset($_GET['cat'])) {$cat = $_GET['cat']; }
  7. if (!isset($cat)) {$cat = 1;}
  8.  
  9. if (!preg_match("|^[\d]+$|", $cat)) {
  10. exit ("<p>Неверный формат запроса! Проверьте URL!");
  11. }
  12.  
  13. $result = mysql_query("SELECT * FROM categories WHERE id='$cat'");
  14.  
  15. if (!$result)
  16. {
  17. echo "<p>Ошибка базы данных. Напишите об этом администратору ".$config['admin_email']."<br> <strong>Код ошибки:</strong></p>";
  18. }
  19.  
  20. if (mysql_num_rows($result) > 0)
  21.  
  22. {
  23. $myrow = mysql_fetch_array($result);
  24.  
  25. }
  26.  
  27. else
  28. {
  29. echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
  30. exit();
  31. }      
  32.                
  33. $result77 = mysql_query("SELECT str FROM options");
  34. $myrow77 = mysql_fetch_array($result77);
  35. $num = $myrow77["str"];
  36. @$page = $_GET['page'];
  37. $result00 = mysql_query("SELECT COUNT(*) FROM data WHERE secret=0 AND cat='$cat'");
  38. $temp = mysql_fetch_array($result00);
  39. $posts = $temp[0];
  40. $total = (($posts - 1) / $num) + 1;
  41. $total =  intval($total);
  42. $page = intval($page);
  43. if(empty($page) or $page < 0) $page = 1;
  44.   if($page > $total) $page = $total;
  45. $start = $page * $num - $num;  
  46.                
  47.                
  48. $result = mysql_query("SELECT id,title,description,date,author,mini_img,view,rating,q_vote FROM data WHERE secret=0 AND cat='$cat' ORDER BY id LIMIT $start, $num");
  49.  
  50. if (!$result)
  51. {
  52. echo "<p>Ошибка базы данных. Напишите об этом администратору ".$config['admin_email']." <br> <strong>Код ошибки:</strong></p>";
  53. }
  54.  
  55. if (mysql_num_rows($result) > 0)
  56.  
  57. {
  58. $myrow = mysql_fetch_array($result);
  59.  
  60. do
  61. {
  62.  
  63. $r = $myrow["rating"]/$myrow["q_vote"];
  64. $r = intval($r);
  65.  
  66.  
  67. $news .= "<table align='center' class='post'>";
  68.          
  69.                 $news .= "<tr>";
  70.         $news .= "<td class='post_title'>";
  71.                 $news .= "<p class='post_name'><img class='mini' align='left' src='".$myrow["mini_img"]."'><a href='index.php?id=".$myrow["id"]."'>".$myrow["title"]."</a></p>";
  72.                 $news .= "<p class='post_adds'>Дата : ".$myrow["date"]."</p>";
  73.                 $news .= "<p class='post_adds'>Автор: ".$myrow['author']."</p></td>";
  74.         $news .= "</tr>";
  75.                 $news .= "<tr>";
  76.         $news .= "<td>".$myrow["description"]." <p class='post_view'>Просмотров: ". $myrow["view"]." &nbsp;&nbsp; Рейтинг: <img src='img/".$r.".gif'></p></td>";
  77.         $news .= "</tr>";
  78.          
  79.                 $news .= "</table><br><br>";
  80.  
  81.  
  82. }
  83. while ($myrow = mysql_fetch_array($result));
  84.  
  85.  
  86. if ($page != 1) $pervpage = '<a href=index.php?cat='.$cat.'&page=1>Первая</a> | <a href=index.php?cat='.$cat.'&page='. ($page - 1) .'>Предыдущая</a> | ';
  87. if ($page != $total) $nextpage = ' | <a href=index.php?cat='.$cat.'&page='. ($page + 1) .'>Следующая</a> | <a href=index.php?cat='.$cat.'&page=' .$total. '>Последняя</a>';
  88.  
  89. if($page - 5 > 0) $page5left = ' <a href=index.php?cat='.$cat.'&page='. ($page - 5) .'>'. ($page - 5) .'</a> | ';
  90. if($page - 4 > 0) $page4left = ' <a href=index.php?cat='.$cat.'&page='. ($page - 4) .'>'. ($page - 4) .'</a> | ';
  91. if($page - 3 > 0) $page3left = ' <a href=index.php?cat='.$cat.'&page='. ($page - 3) .'>'. ($page - 3) .'</a> | ';
  92. if($page - 2 > 0) $page2left = ' <a href=index.php?cat='.$cat.'&page='. ($page - 2) .'>'. ($page - 2) .'</a> | ';
  93. if($page - 1 > 0) $page1left = '<a href=index.php?cat='.$cat.'&page='. ($page - 1) .'>'. ($page - 1) .'</a> | ';
  94.  
  95. if($page + 5 <= $total) $page5right = ' | <a href=index.php?cat='.$cat.'&page='. ($page + 5) .'>'. ($page + 5) .'</a>';
  96. if($page + 4 <= $total) $page4right = ' | <a href=index.php?cat='.$cat.'&page='. ($page + 4) .'>'. ($page + 4) .'</a>';
  97. if($page + 3 <= $total) $page3right = ' | <a href=index.php?cat='.$cat.'&page='. ($page + 3) .'>'. ($page + 3) .'</a>';
  98. if($page + 2 <= $total) $page2right = ' | <a href=index.php?cat='.$cat.'&page='. ($page + 2) .'>'. ($page + 2) .'</a>';
  99. if($page + 1 <= $total) $page1right = ' | <a href=index.php?cat='.$cat.'&page='. ($page + 1) .'>'. ($page + 1) .'</a>';
  100.  
  101.  
  102. if ($total > 1)
  103. {
  104. Error_Reporting(E_ALL & ~E_NOTICE);
  105. echo "<div class=\"pstrnav\">";
  106. $news .= $pervpage.$page5left.$page4left.$page3left.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$page3right.$page4right.$page5right.$nextpage;
  107. echo "</div>";
  108. }
  109.  
  110.  
  111.  
  112.  
  113. }
  114.  
  115. return $news;
  116. }
  117. ?>
  118.  
  119.  


Скрипт просмотра отдельной новости:
PHP:
скопировать код в буфер обмена
  1. <?
  2. function view_news(); {
  3. $news = '';
  4. if (isset($_GET['id'])) {$id = $_GET['id']; }
  5. if (!isset($id)) {$id = 1;}
  6.  
  7. if (!preg_match("|^[\d]+$|", $id)) {
  8. exit ("<p>Неверный формат запроса! Проверьте URL!");
  9. }
  10.  
  11. $result = mysql_query("SELECT * FROM data WHERE id='$id'");
  12.  
  13. if (!$result)
  14. {
  15. echo "<p>Ошибка базы данных. Напишите об этом администратору ".$config['admin_email']."<br> <strong>Код ошибки:</strong></p>";
  16. }
  17.  
  18. if (mysql_num_rows($result) > 0)
  19.  
  20. {
  21. $myrow = mysql_fetch_array($result);
  22. $new_view = $myrow["view"] + 1;
  23. $update = mysql_query ("UPDATE data SET view='$new_view' WHERE id='$id'");
  24.  
  25.  
  26. }
  27.  
  28. else
  29. {
  30. echo "<p>Информация по запросу не может быть извлечена в таблице нет записей.</p>";
  31. exit();
  32. }
  33.  
  34.  
  35. $news .= "<p class='post_title2'>".$myrow["title"]."</p><p class='post_add'>Автор: ".$myrow["author"]."</p><p class='post_add'>Дата: ".$myrow["date"]."</p>".$myrow["text"]."<p class='post_view'>Просмотров: ".$myrow["view"]."</p>";
  36.  
  37. echo "<p class='post_comment'>Комментарии к этой заметке:</p>";
  38.  
  39. $result3 = mysql_query ("SELECT * FROM comments WHERE post='$id'");
  40. if (mysql_num_rows($result3) > 0)
  41. {
  42. $myrow3 = mysql_fetch_array($result3);
  43.  
  44. do
  45. {
  46. $news .= "<div class='post_div'><p class='post_comment_add'>Комментарий добавил(а): <strong>".$myrow3["author"]."</strong> <br> Дата: <strong>".$myrow3["date"]."</strong></p>
  47. <p>".$myrow3["text"]."</p></div>";
  48.  
  49. }
  50. while ($myrow3 = mysql_fetch_array($result3));
  51.  
  52.  
  53. }
  54.  
  55. $result4 = mysql_query ("SELECT img FROM comments_setting");
  56. $myrow4 = mysql_fetch_array($result4);
  57.  
  58. return $news;
  59. }
  60.  
  61. ?>
  62.  
  63. <p class='post_comment'>Добавить Ваш комментарий:</p>
  64. <form action="comment.php" method="post" name="form_com">
  65. <p><label>Ваше имя: </label><input name="author" type="text" size="30" maxlength="30"></p>
  66. <p><label>Текст комментария: <br> <textarea name="text" cols="32" rows="4"></textarea></label></p><p>Введите сумму чисел с картинки<br><img style='margin-top:17px;' src="<? echo $myrow4["img"]; ?>" width="80" height="40">
  67.   <input style='margin-bottom:16px;' name="pr" type="text" size="5" maxlength="5"></p>
  68.   <input name="id" type="hidden" value="<? echo $id; ?>">
  69. <p><input name="sub_com" type="submit" value="Комментировать"></p>
  70.  
  71.  
  72. </form>
  73.  
Nooo Отправлено: 08 Мая, 2011 - 00:26:13 • Тема: Помогите с выводом данных • Форум: Хранение данных, их вывод и обработка

Ответов: 2
Просмотров: 1328
Помогите с выводом данных из бд..
Изложу суть проблемы:
Когда заходишь под любого пользователя сайта например у которого id = 10 но скрипт выводит данные пользователя у которого id = 1 чет не пойму как это исправить( вот сам скрипт вывода...
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. require_once '/config/connect_db.php';
  3.  
  4. $r1 = mysql_query('SELECT * FROM users');
  5. $myrow = mysql_fetch_array($r1);
  6.  
  7. if ( isset( $_SESSION['user'] ) ) {
  8.   // Для авторизованного посетителя
  9.  
  10.   if ($myrow['server'] >= 1) {
  11. echo '<br>';
  12. echo '<table style="border: 1px solid black; border-collapse: collapse;" width="100%" height="213" cellpadding="0">';
  13. include('panel/tmp/menu.php');
  14.  echo ' <tr>';
  15.  echo '   <td style="border: 1px solid black;" width="40%">&nbsp;Мониторинг сервера:</td>';
  16.  echo '   <td style="border: 1px solid black;" width="60%"></td>';
  17. echo '  </tr>';
  18. echo '  <tr>';
  19. echo '    <td style="border: 1px solid black;" class=".nhead2">&nbsp;IP-Адрес:</td>';
  20.  echo '   <td style="border: 1px solid black;" class=".nhead2">&nbsp;'.$myrow['ip'].':'.$myrow['id_user'].'</td>';
  21. echo '  </tr>';
  22. echo '  <tr>';
  23.  echo '   <td style="border: 1px solid black;" class=".nhead2">&nbsp;Стоимость:</td>';
  24.  echo '   <td style="border: 1px solid black;" class=".nhead2">&nbsp;'.$myrow['price'].' руб.</td>';
  25. echo '  </tr>';
  26.  echo ' <tr>';
  27. echo '    <td style="border: 1px solid black;" class=".nhead2">&nbsp;Осталось дней:</td>';
  28.   echo '  <td style="border: 1px solid black;" class=".nhead2">&nbsp;'.$myrow['day'].'</td>';
  29.  echo ' </tr>';
  30. echo '  <tr>';
  31.  echo '   <td style="border: 1px solid black;" class=".nhead2">&nbsp;Статус сервера:</td>';
  32.  echo '   <td style="border: 1px solid black;"><center><a href="/servers/'.$myrow['id_user'].'/start.php" target="_blank" ><img src="tmp/images/start.jpg"></img></a>&nbsp;<a href="/servers/'.$myrow["id_user"].'/stop.php" target="_blank"><img src="tmp/images/stop.jpg"></img></a>&nbsp;<a href="/servers/'.$myrow["id_user"].'/restart.php" target="_blank"><img src="tmp/images/restart.jpg"></img></a></center></td>';
  33.  echo ' </tr>';
  34.  echo ' <tr>';
  35.  echo '   <td style="border: 1px solid black;" class=".nhead2" >&nbsp;Слоты:</td>';
  36.  echo '   <td style="border: 1px solid black;" class=".nhead2">&nbsp;'.$myrow["slots"].'</td>';
  37. echo '  </tr>';
  38. echo '<table>';
  39.  echo ' <tr>';
  40.  echo '   <td >&nbsp;</td>';
  41.  echo '   <td >&nbsp;</td>';
  42. echo '  </tr>';
  43. echo '</table>';
  44. }
  45. else{
  46.  
  47. echo 'Для начала работы с сервером необходимо его заказать!<br><a href="/order.php">Заказать сервер можно тут.</a>';
  48.  
  49. }
  50. }
  51. else {
  52.   // Для не авторизованного посетителя
  53.  
  54. echo 'Уважаемый пользователь. Чтобы управлять своим сервером пожалуйста <a hraf="/register.php">зарегистрируйтесь.</a> Или зайдите в систему под вашим логином и паролем.';  
  55.  
  56.   }
  57.   ?>
Nooo Отправлено: 23 Февраля, 2011 - 15:34:09 • Тема: Ошибка при регистрации • Форум: Программирование на PHP

Ответов: 3
Просмотров: 745
При реге буквенного логина пишет ошибку в 85 строке
PHP:
скопировать код в буфер обмена
  1. Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /home/p22319/www/xXx-xXx.ru/newuser.php on line 85


Также при повторной регистрации логина но при другом мыле он регает логин 2й раз... и пишет уже 2 ошибки
PHP:
скопировать код в буфер обмена
  1. Warning: Cannot modify header information - headers already sent by (output started at /home/p22319/www/xxx-xxx.ru/newuser.php:85) in /home/p22319/www/xxx-xxx.ru/newuser.php on line 105


Вот сам файл регистрации(обработчик)

PHP:
скопировать код в буфер обмена
  1. <?PHP
  2.  
  3. require 'config/connect_db.php';
  4.  
  5. ?>
  6. <?
  7. // Обрезаем переменные до длины, указанной в параметре maxlength тега input
  8. $name      = substr( $_POST['name'], 0, 30 );
  9. $passw     = substr( $_POST['passw'], 0, 30 );
  10. $confirm   = substr( $_POST['confirm'], 0, 30 );
  11. $email     = substr( $_POST['email'], 0, 60 );
  12. $icq       = substr( $_POST['icq'], 0, 9 );
  13. $url       = substr( $_POST['url'], 0, 60 );
  14. $pr        = substr( $_POST['pr'], 0, 2 );
  15.  
  16. // Обрезаем лишние пробелы
  17. $name      = trim( $name );
  18. $passw     = trim( $passw );
  19. $confirm   = trim( $confirm );
  20. $email     = trim( $email );
  21. $icq       = trim( $icq );
  22. $url       = trim( $url );
  23. $pr        = trim( $pr );
  24.  
  25. //Сравнение суммы на картинке
  26. $result = mysql_query ("SELECT * FROM value_img WHERE sum='$pr'");
  27. $myrow = mysql_fetch_array($result);
  28.  
  29. if ($pr != $myrow["sum"]) {$pr="";}
  30.  
  31. // Проверяем, заполнены ли обязательные поля
  32. $error = '';
  33. if ( empty( $name ) ) $error = $error.'<li class="error_text">не заполнено поле "Имя"</li>'."\n";
  34. if ( empty( $passw ) ) $error = $error.'<li class="error_text">не заполнено поле "Пароль"</li>'."\n";
  35. if ( empty( $confirm ) ) $error = $error.'<li class="error_text">не заполнено поле "Подтвердите пароль"</li>'."\n";
  36. if ( empty( $email ) ) $error = $error.'<li class="error_text">не заполнено поле "Адрес e-mail"</li>'."\n";
  37. // Проверяем, не слишком ли короткий пароль
  38. if ( !empty( $passw ) and strlen( $passw ) < 4 )
  39.     $error = $error.'<li class="error_text">длина пароля должна быть не меньше 4 символов</li>'."\n";
  40. if ( empty( $pr ) ) $error = $error.'<li class="error_text">Вы не ввели сумму, либо ввели ее неправильно!</li>'."\n";
  41. // Проверяем, совпадают ли пароли
  42. if ( !empty( $passw ) and !empty( $confirm ) and $passw != $confirm )  
  43.   $error = $error.'<li class="error_text">не совпадают пароли</li>'."\n";
  44. // Проверяем поля формы на недопустимые символы
  45. if ( !empty( $name ) and !eregi( "[-_[:blank:]0-9a-zа-я]+", $name ) )
  46.   $error = $error.'<li class="error_text">поле "Имя" содержит недопустимые символы</li>'."\n";
  47. if ( !empty( $passw ) and !eregi( "[-_0-9a-z]+", $passw ) )
  48.   $error = $error.'<li class="error_text">поле "Пароль" содержит недопустимые символы</li>'."\n";
  49. if ( !empty( $confirm ) and !eregi( "[-_0-9a-z]+", $confirm ) )
  50.   $error = $error.'<li class="error_text">поле "Подтвердите пароль" содержит недопустимые символы</li>'."\n";
  51. // Проверяем корректность e-mail
  52. if ( !empty( $email ) and !preg_match( "#^[0-9a-z_\-\.]+@[0-9a-z\-\.]+\.[a-z]{2,6}$#i", $email ) )
  53.   $error = $error.'<li class="error_text">поле "Адрес e-mail" должно соответствовать формату somebody@somewhere.ru</li>'."\n";
  54. // Проверка корректного ICQ
  55. if ( !empty( $icq ) and !preg_match( "#^[0-9]+$#", $icq ) )
  56.     $error = $error.'<li class="error_text">поле "ICQ" содержит недопустимые символы</li>'."\n";
  57. // Проверяем корректность URL домашней странички  
  58. if ( !empty( $url ) and !preg_match( "#^(http:\/\/)?(www.)?[0-9a-z\-\.]+\.[a-z]{2,6}\/?$#i", $url ) )
  59.   $error = $error.'<li class="error_text">поле "Домашняя страничка" должно соответствовать формату http://www.homepage.ru</li>'."\n";
  60.   // Выясняем не зарегистрировано ли уже это имя
  61.   // Возможно три ситуации, которые необходимо предотвратить:
  62.   // 1. Вводится ник, полностью совпадающий с уже существующим
  63.   // 2. Вводится уже существующий кирилический ник, в котором
  64.   //    одна или несколько букв заменены на латинские
  65.   // 3. Вводится уже существующий латинский ник, в котором
  66.   //    одна или несколько букв заменениы на кирилические
  67.  
  68.   // Массив кирилических букв
  69.   $rus = array( "А","а","В","Е","е","К","М","Н","О","о","Р","р","С","с","Т","Х","х" );
  70.   // Массив латинских букв
  71.   $eng = array( "A","a","B","E","e","K","M","H","O","o","P","p","C","c","T","X","x" );
  72.   $new_name = preg_replace( "#[^- _0-9a-zА-Яа-я]#i", "", $name );
  73.   // Заменяем русские буквы латинскими
  74.   $eng_new_name = str_replace( $rus, $eng, $new_name );
  75.   // Заменяем латинские буквы русскими
  76.   $rus_new_name = str_replace( $eng, $rus, $new_name );
  77.   // Формируем SQL-запрос
  78.   $query = "SELECT * FROM users
  79.                     WHERE name LIKE '".mysql_real_escape_string( $new_name )."' OR
  80.                               name LIKE '".mysql_real_escape_string( $eng_new_name )."' OR
  81.                               name LIKE '".mysql_real_escape_string( $rus_new_name )."';";
  82.   $res = mysql_query( $query );
  83.  
  84.   if ( mysql_num_rows( $res ) > 0 )
  85.     $error = $error.'<li class="error_text">пользователь с логином "'.$new_name.'" уже зарегистрирован. Пожалуйста, выберите другой логин.</li>'."\n";
  86.   $query = "SELECT * FROM users
  87.                     WHERE email LIKE '".mysql_real_escape_string( $email )."';";
  88.   $res = mysql_query( $query );
  89.  
  90.   if ( mysql_num_rows( $res ) > 0 )
  91.     $error = $error.'<li class="error_text">пользователь с адресом "'.$email.'" уже зарегистрирован. Пожалуйста, введите другой.</li>'."\n";
  92.  
  93.  
  94. // Если были допущены ошибки при заполнении формы - перенаправляем посетителя на страницу регистрации
  95. if ( !empty( $error ) ) {
  96.   $_SESSION['addNewUserForm'] = array();
  97.   $_SESSION['addNewUserForm']['error'] = '<p class="errorMsg"><strong>При заполнении формы были допущены ошибки:</strong></p>'."\n".'<ul class="errorMsg">'."\n".$error.'</ul>'."\n";
  98.   $_SESSION['addNewUserForm']['name'] = $name;
  99.   $_SESSION['addNewUserForm']['passw'] = $passw;
  100.   $_SESSION['addNewUserForm']['email'] = $email;
  101.   $_SESSION['addNewUserForm']['icq'] = $icq;
  102.   $_SESSION['addNewUserForm']['url'] = $url;
  103.   $_SESSION['addNewUserForm']['sum'] = $pr;
  104.   header( 'Location: /register.php' );
  105.   die();
  106. }
  107.  
  108. //Добавляет к введёному урлу http://
  109. if ( !empty( $url ) and substr($url, 0, 7) != 'http://' ) $url = 'http://'.$url;
  110.  
  111. // Уникальный код для активации учетной записи
  112. $code = md5( uniqid( rand(), 1 ) );
  113.  
  114. // Все поля заполнены правильно - продолжаем регистрацию
  115. $query = "INSERT INTO users
  116.      (
  117.      name,
  118.      passw,
  119.      email,
  120.           icq,
  121.      url,
  122.           puttime,
  123.           last_visit,
  124.           activation
  125.      )
  126.      VALUES
  127.      (
  128.      '".mysql_real_escape_string( $name )."',
  129.      '".mysql_real_escape_string( md5( $passw ) )."',
  130.      '".mysql_real_escape_string( $email )."',
  131.           '".mysql_real_escape_string( $icq )."',
  132.      '".mysql_real_escape_string( $url )."',
  133.           NOW(),
  134.           NOW(),
  135.           '".$code."'
  136.      );";
  137. $res = mysql_query( $query );
  138.  
  139.   // Посылаем письмо пользователю с просьбой активировать учетную запись
  140.   $headers = "From: ".$_SERVER['SERVER_NAME']." <'Support@xxx-xxx.ru'>\n";
  141.   $headers = $headers."Content-type: text/html; charset=\"windows-1251\"\n";
  142.   $headers = $headers."Return-path: <'Support@xxx-xxx.ru'>\n";
  143.   $message = '<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Добро пожаловать на сайт <strong>'.$_SERVER['SERVER_NAME'].'</strong>!</p>'."\n";
  144.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Пожалуйста обязательно сохраните это письмо. Параметры вашей учётной записи таковы:</p>'."\n";
  145.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;"><strong>Логин:</strong> '.$name.'<br/><strong>Пароль:</strong> '.$passw.'</p>'."\n";
  146.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Для активации вашей учетной записи перейдите по ссылке:</p>'."\n";
  147.   $link = 'http://'.$_SERVER['SERVER_NAME'].'/activation.php?code='.$code;  
  148.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;"><a href="'.$link.'">Активировать учетную запись</a></p>'."\n";
  149.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Не забывайте свой пароль: он хранится в нашей базе в зашифрованном виде, и мы не сможем вам его выслать. Если вы всё же забудете пароль, то свяжитесь со службой поддержки сайта, вам вышлют новый пароль.</p>'."\n";
  150.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Спасибо за то, что выбираете нас.</p>'."\n";
  151.   $subject = 'Регистрация на сайте '.$_SERVER['SERVER_NAME'];
  152.   $subject = '=?koi8-r?B?'.base64_encode(convert_cyr_string($subject, "w","k")).'?=';
  153.   mail( $email, $subject, $message, $headers );
  154.  
  155. echo "<HTML><HEAD><TITLE>Register</TITLE>
  156.            <META HTTP-EQUIV='Refresh' CONTENT='7; URL=http://xxx-xxx.ru/index.php'>
  157.                         <table align='center'
  158.                         style='width:50%; margin-top:250px; text-align:center; border:1px solid #2f2f2f;
  159.                         background-color:#f6f6f6; font-family:Verdana; font-size:14px; color:2f2f2f;
  160.                         padding:15px 0px 15px 0;'>
  161.                         <tr>
  162.                         <td>
  163.                         <p>Уважаемый(ая) <strong>".$name."</strong>,<br>
  164.                         На Ваш e-mail выслано письмо с просьбой подтвердить регистрацию.
  165.            Чтобы завершить регистрацию и активировать учетную запись, зайдите
  166.            по ссылке, указанной в письме.</p>
  167.                         </td>
  168.                         </tr>
  169.                         </table>
  170.                         </head></html>";    
  171.       exit();
  172.  
  173.  
  174. ?>


помогите исправить нечего не получается(
Nooo Отправлено: 17 Февраля, 2011 - 19:33:03 • Тема: Ошибка при регистрации • Форум: Программирование на PHP

Ответов: 3
Просмотров: 745
При регистрации выдает ошибку
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in /var/www/xxx89/data/www/XxX-xXx. ru/newserver.php on line 85

Также не приходит письмо с подтверждением!

Файл обработчик


PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. require 'config/connect_db.php';
  3. require 'config/config.php';
  4.  
  5. setlocale(LC_CTYPE, "ru_RU.CP1251");
  6.  
  7. // Обрезаем переменные до длины, указанной в параметре maxlength тега input
  8. $name      = substr( $_POST['name'], 0, 30 );
  9. $passw     = substr( $_POST['passw'], 0, 30 );
  10. $confirm   = substr( $_POST['confirm'], 0, 30 );
  11. $email     = substr( $_POST['email'], 0, 60 );
  12. $icq       = substr( $_POST['icq'], 0, 9 );
  13. $url       = substr( $_POST['url'], 0, 60 );
  14. $pr        = substr( $_POST['pr'], 0, 2 );
  15.  
  16. // Обрезаем лишние пробелы
  17. $name      = trim( $name );
  18. $passw     = trim( $passw );
  19. $confirm   = trim( $confirm );
  20. $email     = trim( $email );
  21. $icq       = trim( $icq );
  22. $url       = trim( $url );
  23. $pr        = trim( $pr );
  24.  
  25. //Сравнение суммы на картинке
  26. $result = mysql_query ("SELECT * FROM value_img WHERE sum='$pr'");
  27. $myrow = mysql_fetch_array($result);
  28.  
  29. if ($pr != $myrow["sum"]) {$pr="";}
  30.  
  31. // Проверяем, заполнены ли обязательные поля
  32. $error = '';
  33. if ( empty( $name ) ) $error = $error.'<li class="error_text">не заполнено поле "Имя"</li>'."\n";
  34. if ( empty( $passw ) ) $error = $error.'<li class="error_text">не заполнено поле "Пароль"</li>'."\n";
  35. if ( empty( $confirm ) ) $error = $error.'<li class="error_text">не заполнено поле "Подтвердите пароль"</li>'."\n";
  36. if ( empty( $email ) ) $error = $error.'<li class="error_text">не заполнено поле "Адрес e-mail"</li>'."\n";
  37. // Проверяем, не слишком ли короткий пароль
  38. if ( !empty( $passw ) and strlen( $passw ) < 4 )
  39.     $error = $error.'<li class="error_text">длина пароля должна быть не меньше 4 символов</li>'."\n";
  40. if ( empty( $pr ) ) $error = $error.'<li class="error_text">Вы не ввели сумму, либо ввели ее неправильно!</li>'."\n";
  41. // Проверяем, совпадают ли пароли
  42. if ( !empty( $passw ) and !empty( $confirm ) and $passw != $confirm )  
  43.   $error = $error.'<li class="error_text">не совпадают пароли</li>'."\n";
  44. // Проверяем поля формы на недопустимые символы
  45. if ( !empty( $name ) and !eregi( "[-_[:blank:]0-9a-zа-я]+", $name ) )
  46.   $error = $error.'<li class="error_text">поле "Имя" содержит недопустимые символы</li>'."\n";
  47. if ( !empty( $passw ) and !eregi( "[-_0-9a-z]+", $passw ) )
  48.   $error = $error.'<li class="error_text">поле "Пароль" содержит недопустимые символы</li>'."\n";
  49. if ( !empty( $confirm ) and !eregi( "[-_0-9a-z]+", $confirm ) )
  50.   $error = $error.'<li class="error_text">поле "Подтвердите пароль" содержит недопустимые символы</li>'."\n";
  51. // Проверяем корректность e-mail
  52. if ( !empty( $email ) and !preg_match( "#^[0-9a-z_\-\.]+@[0-9a-z\-\.]+\.[a-z]{2,6}$#i", $email ) )
  53.   $error = $error.'<li class="error_text">поле "Адрес e-mail" должно соответствовать формату somebody@somewhere.ru</li>'."\n";
  54. // Проверка корректного ICQ
  55. if ( !empty( $icq ) and !preg_match( "#^[0-9]+$#", $icq ) )
  56.     $error = $error.'<li class="error_text">поле "ICQ" содержит недопустимые символы</li>'."\n";
  57. // Проверяем корректность URL домашней странички  
  58. if ( !empty( $url ) and !preg_match( "#^(http:\/\/)?(www.)?[0-9a-z\-\.]+\.[a-z]{2,6}\/?$#i", $url ) )
  59.   $error = $error.'<li class="error_text">поле "Домашняя страничка" должно соответствовать формату http://www.homepage.ru</li>'."\n";
  60.   // Выясняем не зарегистрировано ли уже это имя
  61.   // Возможно три ситуации, которые необходимо предотвратить:
  62.   // 1. Вводится ник, полностью совпадающий с уже существующим
  63.   // 2. Вводится уже существующий кирилический ник, в котором
  64.   //    одна или несколько букв заменены на латинские
  65.   // 3. Вводится уже существующий латинский ник, в котором
  66.   //    одна или несколько букв заменениы на кирилические
  67.  
  68.   // Массив кирилических букв
  69.   $rus = array( "А","а","В","Е","е","К","М","Н","О","о","Р","р","С","с","Т","Х","х" );
  70.   // Массив латинских букв
  71.   $eng = array( "A","a","B","E","e","K","M","H","O","o","P","p","C","c","T","X","x" );
  72.   $new_name = preg_replace( "#[^- _0-9a-zА-Яа-я]#i", "", $name );
  73.   // Заменяем русские буквы латинскими
  74.   $eng_new_name = str_replace( $rus, $eng, $new_name );
  75.   // Заменяем латинские буквы русскими
  76.   $rus_new_name = str_replace( $eng, $rus, $new_name );
  77.   // Формируем SQL-запрос
  78.   $query = "SELECT * FROM users
  79.                     WHERE name LIKE '".mysql_real_escape_string( $new_name )."' OR
  80.                               name LIKE '".mysql_real_escape_string( $eng_new_name )."' OR
  81.                               name LIKE '".mysql_real_escape_string( $rus_new_name )."';";
  82.   $res = mysql_query( $query );
  83.  
  84.   if ( mysql_num_rows( $res ) > 0 )
  85.     $error = $error.'<li class="error_text">пользователь с логином "'.$new_name.'" уже зарегистрирован. Пожалуйста, выберите другой логин.</li>'."\n";
  86.  
  87.   $query = "SELECT * FROM users
  88.                     WHERE email LIKE '".mysql_real_escape_string( $email )."';";
  89.   $res = mysql_query( $query );
  90.  
  91.   if ( mysql_num_rows( $res ) > 0 )
  92.     $error = $error.'<li class="error_text">пользователь с адресом "'.$email.'" уже зарегистрирован. Пожалуйста, введите другой.</li>'."\n";
  93.  
  94.  
  95. // Если были допущены ошибки при заполнении формы - перенаправляем посетителя на страницу регистрации
  96. if ( !empty( $error ) ) {
  97.   $_SESSION['addNewUserForm'] = array();
  98.   $_SESSION['addNewUserForm']['error'] = '<p class="errorMsg"><strong>При заполнении формы были допущены ошибки:</strong></p>'."\n".'<ul class="errorMsg">'."\n".$error.'</ul>'."\n";
  99.   $_SESSION['addNewUserForm']['name'] = $name;
  100.   $_SESSION['addNewUserForm']['passw'] = $passw;
  101.   $_SESSION['addNewUserForm']['email'] = $email;
  102.   $_SESSION['addNewUserForm']['icq'] = $icq;
  103.   $_SESSION['addNewUserForm']['url'] = $url;
  104.   $_SESSION['addNewUserForm']['sum'] = $pr;
  105.   header( 'Location: ../shop.php' );
  106.   die();
  107. }
  108.  
  109. //Добавляет к введёному урлу http://
  110. if ( !empty( $url ) and substr($url, 0, 7) != 'http://' ) $url = 'http://'.$url;
  111.  
  112. // Уникальный код для активации учетной записи
  113. $code = md5( uniqid( rand(), 1 ) );
  114.  
  115. // Все поля заполнены правильно - продолжаем регистрацию
  116. $query = "INSERT INTO users
  117.      (
  118.      name,
  119.      passw,
  120.      email,
  121.           icq,
  122.      url,
  123.           puttime,
  124.           last_visit,
  125.           activation
  126.      )
  127.      VALUES
  128.      (
  129.      '".mysql_real_escape_string( $name )."',
  130.      '".mysql_real_escape_string( md5( $passw ) )."',
  131.      '".mysql_real_escape_string( $email )."',
  132.           '".mysql_real_escape_string( $icq )."',
  133.      '".mysql_real_escape_string( $url )."',
  134.           NOW(),
  135.           NOW(),
  136.           '".$code."'
  137.      );";
  138. $res = mysql_query( $query );
  139.  
  140.   // Посылаем письмо пользователю с просьбой активировать учетную запись
  141.   $headers = "From: ".$_SERVER['SERVER_NAME']." <'Support@опролап.ru'>\n";
  142.   $headers = $headers."Content-type: text/html; charset=\"windows-1251\"\n";
  143.   $headers = $headers."Return-path: <'Support@лрпопрол.ru'>\n";
  144.   $message = '<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Добро пожаловать на сайт <strong>'.$_SERVER['SERVER_NAME'].'</strong>!</p>'."\n";
  145.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Пожалуйста обязательно сохраните это письмо. Параметры вашей учётной записи таковы:</p>'."\n";
  146.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;"><strong>Логин:</strong> '.$name.'<br/><strong>Пароль:</strong> '.$passw.'</p>'."\n";
  147.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Для активации вашей учетной записи перейдите по ссылке:</p>'."\n";
  148.   $link = 'http://'.$_SERVER['SERVER_NAME'].'/activation.php?code='.$code;  
  149.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;"><a href="'.$link.'">Активировать учетную запись</a></p>'."\n";
  150.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Не забывайте свой пароль: он хранится в нашей базе в зашифрованном виде, и мы не сможем вам его выслать. Если вы всё же забудете пароль, то свяжитесь со службой поддержки сайта, вам вышлют новый пароль.</p>'."\n";
  151.   $message = $message.'<p style="font-family:Verdana; font-size:14px; color:2f2f2f;">Спасибо за то, что зарегистрировались на нашем сайте.</p>'."\n";
  152.   $subject = 'Регистрация на сайте '.$_SERVER['SERVER_NAME'];
  153.   $subject = '=?koi8-r?B?'.base64_encode(convert_cyr_string($subject, "w","k")).'?=';
  154.   mail( $email, $subject, $message, $headers );
  155.  
  156. echo "<HTML><HEAD><TITLE>Register</TITLE>
  157.            <META HTTP-EQUIV='Refresh' CONTENT='7; URL=http://рп.ru/.php'>
  158.                         <table align='center'
  159.                         style='width:50%; margin-top:250px; text-align:center; border:1px solid #2f2f2f;
  160.                         background-color:#f6f6f6; font-family:Verdana; font-size:14px; color:2f2f2f;
  161.                         padding:15px 0px 15px 0;'>
  162.                         <tr>
  163.                         <td>
  164.                         <p>Уважаемый(ая) <strong>".$name."</strong>,<br>
  165.                         На Ваш e-mail выслано письмо с просьбой подтвердить регистрацию.
  166.            Чтобы завершить регистрацию и активировать учетную запись, зайдите
  167.            по ссылке, указанной в письме.</p>
  168.                         </td>
  169.                         </tr>
  170.                         </table>
  171.                         </head></html>";    
  172.       exit();
  173.  
  174.  
  175. ?>


Что делать??????????
Nooo Отправлено: 10 Февраля, 2011 - 01:34:25 • Тема: Консоль • Форум: Программирование на PHP

Ответов: 5
Просмотров: 341
я забыл дописать "возможно ли это?" =)

Теперь понял что нет)
Nooo Отправлено: 10 Февраля, 2011 - 00:29:29 • Тема: Консоль • Форум: Программирование на PHP

Ответов: 5
Просмотров: 341
Всем доброе время суток)

Интересует вопрос как вывести windows консоль(cmd) на сайт? Когда запускаешь php скрипт например запуск файла install.exe открывается консоль и идет загрузка файлов... как эту консоль вывести на сайт? и возможно ли это?

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

 
Powered by ExBB FM 1.0 RC1. InvisionExBB