Вниз  PHP и мелкие вопросы
- 15.05.2012 / 20:36
Helltar
  Пользователь

Helltar 
Сейчас: Offline
Сломать FTP :nya:
- 15.05.2012 / 20:42
Dinisimys1
  Пользователь

Dinisimys1 
Сейчас: Offline
Ну а еще?
- 15.05.2012 / 20:54
Helltar
  Пользователь

Helltar 
Сейчас: Offline
Если сервер заглючит. :-D Это невозможно.
- 15.05.2012 / 21:00
web_demon
  Супервизор

web_demon 
Сейчас: Offline
Dinisimys1 (15.05.2012/20:34)А можно ли как-то посмотреть код чужого скрипта?Конечно нет, но ты всегда можешь скачать кучу бесплатных скриптов и cms и глянуть исходный код.
- 15.05.2012 / 21:32
TAPAHbl4
  Пользователь

TAPAHbl4 
Сейчас: Offline
Dinisimys1, нет конечно, тогда какой толк был бы? :-D
- 15.05.2012 / 21:38
Dinisimys1
  Пользователь

Dinisimys1 
Сейчас: Offline
TAPAHbl4, просто я удивился, мне это училка по информатике говорила :hack:
- 15.05.2012 / 21:40
Dinisimys1
  Пользователь

Dinisimys1 
Сейчас: Offline
И не отходим от этой темы, сразу же вопросик :)
  1. <?php
  2. $captcha_error='';
  3. $reg=$auto_user=$error=$db_error=false;
  4. session_start();
  5. $db_server= mysql_connect("openserver","root","");
  6. if (!$db_server) $db_error='Помилка підкулючення до бази данних. Код:' . mysql_error() . '<br />';
  7. if (!mysql_select_db("ukrnet")) $db_error.='Помилка вибору бази данних. Код:' . mysql_error() . '<br />';
  8. if (User($auto_user))
  9. {
  10. haeder("Location: /");
  11. mysql_close("ukrnet");
  12. exit;
  13. }
  14. elseif (!empty($_POST['submit']))
  15. {
  16. $login=$_POST['login'];
  17. $password=$_POST['password'];
  18. $email=$_POST['email'];
  19. $error.=Valid($login,"логін") . Valid($password,"парол") . ValidEmail($email) . ValidCaptcha($_POST['captcha']) . $db_error;
  20. if ($error) $reg=false;
  21. else $reg=true;
  22. }
  23. header("Cache-Control: no-store, no-cache, must-revalidate");
  24. header("Cache-Control: post-check=0, pre-check=0", false);
  25. header("Pragma: no-cache");
  26. $im=@imagecreate(50,100) or $captcha_error='Каптча не відображається.<br />';
  27. $char=$_SESSION['captcha'];
  28. $bg=imagecolorallocate($im,9,131,9);
  29. for ($i=0; $i<=100; $i++)
  30. {
  31. $color=imagecolorallocate($im,rand(140,160),rand(160,180),rand(140,180));
  32. imagesetpixel($im,rand(2,89),rand(2,30),$color);
  33. }
  34. for ($i=0;$i<strlen($char);$i++)
  35. {
  36. $color=imagecolorallocate($im,131,152,131);
  37. $x=5+$i*20;
  38. $y = rand(1, 6);
  39. imagechar ($im, 5, $x, $y, $char[$i], $color);
  40. }
  41. echo '<?xml version="1.0" encoding="UTF-8"?>
  42. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  43. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  44. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  45. <head>
  46. <title>Реєстрація</title>
  47. <link rel="stylesheet"  href="../style/style.css" type="text/css" />
  48. </head>
  49. <body>
  50. <table>
  51. <tr><td><img src="../logo.jpg" alt="logo"></td><td></td></tr>
  52. <tr><td colspan=2><font class="menu">Реєстрація</font><a href="nojs.php" class="menu" id="button">Назад</a></td></tr>
  53. <tr><td>';
  54. if ($error) echo '<br /><div class="error">' . $error . '</div><br />';
  55. if ($reg == true)
  56. {
  57. echo 'Дякуємо за успішну реєстрацію.<br />
  58. Логін: ' . $login . '<br />
  59. Пароль: ' . $password . '<br />
  60. E-mail: ' . $email . '<br />';
  61. $password=md5($password);
  62. $q=mysql_query("INSERT INTO `user` SET `login`='$login', `password`='$password', `email`='$email'");
  63. mysql_close($db_server);
  64. echo '<a href="enter.php">Авторизуйтесь</a>';
  65. }
  66. else
  67. {
  68. echo '<form method="post" action="reg.php" />
  69. Логін:  <input type="text" name="login" /><br /><br />
  70. Пароль:  <input type="text" name="password" /><br /><br />
  71. E-mail:  <input type="text" name="email" /><br /><br />
  72. Ведіть код з картинки:  ';
  73. $_SESSION['captcha']=substr(md5(uniqid("")),0,4);
  74. imagepng ($im);
  75. echo '<input type="text" name="captcha" /><br /><br />
  76. <input type="hidden" name="submit" value="yes" />
  77. <input type="submit" value="Реєстрація" />
  78. </form>
  79. <script>
  80. document.getElementById(\'button\').onclick = function()
  81. {
  82. history.back();
  83. return false;
  84. }
  85. </script>';
  86. }
  87. echo '</table></body></html>';
  88. function Valid($error,$param)
  89. {
  90. if (!$error)
  91. {
  92. if ($param == "логін") return $error.='Запоніть обов\'язково поле ' . $param . '.<br />';
  93. elseif ($param == "парол") return $error.='Запоніть обов\'язково поле ' . $param . 'ь.<br />';
  94. }
  95. else
  96. {
  97. $l=0;
  98. if ($param == "логін" && !mysql_query("SELECT * FROM `user` WHERE `login` = '$error'"))
  99. {
  100. return $error.=' - данний логін уже використовується.<br />';
  101. $l=1;
  102. }
  103. elseif ($l == 0)
  104. {
  105. if (preg_match("/[\W]/", $error)) return $error.='В ' . $param. 'i допускаються тільки символи a-z, A-Z, 0-9, _<br />';
  106. else return "";
  107. if (5 > strlen($error) && strlen($error)< 28) return $error.='В ' . $param . 'i повинно бути не менше 5 та не більше 28 символів<br />';
  108. else return "";
  109. }
  110. else return "";
  111. }
  112. }
  113. function ValidEmail($error)
  114. {
  115. if (!$error) return $error='Запоніть обов\'язково поле e-mail.<br />';
  116. else
  117. {
  118. if (!mysql_query("SELECT * FROM `user` WHERE `email` = '$error'")) return $error.=' - данний e-mail уже використовується.<br />';
  119. else
  120. {
  121. if (5 > strlen($error) && strlen($error)< 28) return $error.='В e-mail\'i повинно бути не менше 5 та не більше 28 символів<br />';
  122. else return "";
  123. if (preg_match("/^[-_a-zA-Z0-9]+@[-a-zA-Z0-9]+.[-a-zA-Z0-9]+$/", $error)) return $error.='E-mail має невірний формат.';
  124. else return "";
  125. }
  126. }
  127. }
  128. function ValidCaptcha ($captcha_error)
  129. {
  130. if (empty($_POST['captcha']) && empty($_SESSION['code'])) return 'Введіть код з картинки';
  131. elseif ($_POST['captcha'] != $_SESSION['captcha']) return 'Не вірно введений код з картинки';
  132. else return false;
  133. }
  134. function User ($auto_user)
  135. {
  136. if (!empty($_COOKIE['login']) && !empty($_COOKIE['login']))
  137. {
  138. $login=$_COOKIE['login'];
  139. $password=$_COOKIE['password'];
  140. if (mysql_query("SELECT * FROM `user` WHERE `login` = '$login' AND `password` = '$password'"))
  141. {
  142. return true;
  143. mysql_close($db_server);
  144. }
  145. else return false;
  146. }
  147. else return false;
  148. }
  149. ?>
Все было норм, решил каптчу добавить и теперь кракозябры выводит, картинки нет, но куча непонятный символов. Кодировка утф-8 без бом
- 15.05.2012 / 21:45
TAPAHbl4
  Пользователь

TAPAHbl4 
Сейчас: Offline
haeder("Location: /"); :hack:
- 15.05.2012 / 21:47
Dinisimys1
  Пользователь

Dinisimys1 
Сейчас: Offline
TAPAHbl4, хм, а что?
- 15.05.2012 / 22:12
TAPAHbl4
  Пользователь

TAPAHbl4 
Сейчас: Offline
Dinisimys1, вообще-то header, а не haeder
Наверх  Всего сообщений: 4740
Фильтровать сообщения
Поиск по теме
Файлы топика (129)