За последние 24 часа нас посетили 35209 программистов и 1736 роботов. Сейчас ищет 841 программист ...

Если будет время, гляньте код

Тема в разделе "Вопросы от блондинок", создана пользователем V1T, 27 янв 2009.

  1. V1T

    V1T Активный пользователь

    С нами с:
    7 окт 2008
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    Крым
    Добрый день, мне кажется это и кодом не назовёшь, скажите, что исправить, что переделать. Спасибо

    PHP:
    1. <?php
    2. if(count($_POST)>0){
    3.     if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']){
    4. ////////////////////////
    5. //Handler start here////
    6. ////////////////////////
    7. $name = $_POST['name'];
    8. $email = $_POST['email'];
    9. $homepage = $_POST['homepage'];
    10. $msg = $_POST['msg'];
    11. if (!Isset($_POST['Submit'])) {
    12. echo "<script>alert ('Вы не нажали кнопку Отправить')</script>";
    13. Header ("Refresh:0; url=http://".$_SERVER['HTTP_HOST']);
    14. die();
    15. }
    16. if (strlen($name) > 30) {
    17. echo "<script>alert ('Имя слишком длинное!Ваше сообщение не должно превышать 30 символов')</script>";
    18. Header ("Refresh:0; url=http://".$_SERVER['HTTP_HOST']);
    19. die();
    20. }
    21.  
    22. if (strlen($email) > 30) {
    23. echo "<script>alert ('Слишком длинный Email адрес! Ваш Email адрес  не должен  превышать 30 символов')</script>";
    24. Header ("Refresh:0; url=http://".$_SERVER['HTTP_HOST']);
    25. die();
    26. }
    27.  
    28. if (strlen($homepage) > 50) {
    29. echo "<script>alert ('Слишком длинный адрес сайта! Ваш  адрес сайта   не должен  превышать 50 символов')</script>";
    30. Header ("Refresh:0; url=http://".$_SERVER['HTTP_HOST']);
    31. die();
    32. }
    33.  
    34. if (strlen($msg) > 100) {
    35. echo "<script>alert ('Слишком длинное сообщение! Ваше сообщение не должно превышать 100 символов')</script>";
    36. Header ("Refresh:0; url=http://".$_SERVER['HTTP_HOST']);
    37. }
    38. $name=addslashes($name);
    39. $homepage=addslashes($homepage);
    40. $msg=addslashes($msg);
    41.  
    42. $name=HtmlSpecialChars($name);
    43. $homepage=HtmlSpecialChars($homepage);
    44. $msg=HtmlSpecialChars($msg);
    45. //////////////////////////////////////////////////////
    46. /////////////////////
    47. $preg_match=preg_match('/^(([^<>()[\]\\.,;:\s@"\']+(\.[^<>()[\]\\.,;:\s@"\']+)*)|("[^"\']+"))@((\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\])|(([a-zA-Z\d\-]+\.)+[a-zA-Z]{2,}))$/',$email);
    48. if ($preg_match == 0){
    49. echo "<script>alert ('Некорректный Email адрес')</script>";
    50. Header ("Refresh:0; url=http://".$_SERVER['HTTP_HOST']);
    51. die();
    52. }
    53. include ("mysql_connect.php");
    54. $create_table= mysql_query("
    55. CREATE TABLE IF NOT EXISTS `gb` (
    56.  `ID` int(11) NOT NULL auto_increment,
    57.  `name` text NOT NULL,
    58.  `email` text NOT NULL,
    59.  `homepage` text NOT NULL,
    60.  `text` text NOT NULL,
    61.  `time` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
    62.  PRIMARY KEY  (`ID`)
    63. );
    64. ") or die ("Can not create table".mysql_error());
    65. $insert = mysql_query ("
    66. INSERT INTO `$dbname`.`gb` (
    67. `ID` ,
    68. `name` ,
    69. `email` ,
    70. `homepage` ,
    71. `text` ,
    72. `time`
    73. )
    74. VALUES (
    75. NULL , '$name' , '$email' ,'$homepage', '$msg' ,
    76. CURRENT_TIMESTAMP
    77. );
    78. ") or die ("Can't insert into table".mysql_error());
    79. if (mysql_affected_rows() == 1) {
    80. echo "<script>alert ('Сообщение добавлено')</script>";
    81. Header ("Refresh:0; url=http://".$_SERVER['HTTP_HOST']."/page.php");
    82. }
    83.   } else {
    84. echo "<script>alert ('Вы не верно ввели код подтверждения')</script>";
    85. Header ("Refresh:0; url=http://".$_SERVER['HTTP_HOST']."/index.php");
    86.     }
    87. }
    88. unset($_SESSION['captcha_keystring']);
    89. ?>
     
  2. kuliev

    kuliev Активный пользователь

    С нами с:
    10 фев 2006
    Сообщения:
    204
    Симпатии:
    0
    Адрес:
    TLT
    А это так задумано чтобы при каждом сообщении создавать одну и туже таблицу в БД?
     
  3. akrinel

    akrinel Активный пользователь

    С нами с:
    26 янв 2009
    Сообщения:
    955
    Симпатии:
    1
    Адрес:
    Spb
     
  4. V1T

    V1T Активный пользователь

    С нами с:
    7 окт 2008
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    Крым
    А куда лучше вставлять сохранение и обработку файла(картинки)? В начало кода или же в конец, после всей обработки?
    Или же вообще для обработки изображения выделить отдельный файл?
     
  5. V1T

    V1T Активный пользователь

    С нами с:
    7 окт 2008
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    Крым
    kuliev таблица создаётся, если не создана
     
  6. unicross

    unicross Активный пользователь

    С нами с:
    14 янв 2009
    Сообщения:
    194
    Симпатии:
    0
    V1T, за что вы так пользователей не любите???
    При любой ошибке заполнять форму с нуля...
     
  7. kuliev

    kuliev Активный пользователь

    С нами с:
    10 фев 2006
    Сообщения:
    204
    Симпатии:
    0
    Адрес:
    TLT
    Зачем напрягать СУБД проверкой есть ли такая таблица или нет.?
     
  8. V1T

    V1T Активный пользователь

    С нами с:
    7 окт 2008
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    Крым
    Незнаю, ну чтобы не заходить лишний раз в Phpmyadmin и не создавать таблицы :roll:. unicross, кстати не подумал совсем, спасибо
     
  9. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
    Как это? Максимальная длина доменного имени в зоне .com - 63 символа, не считая "www." и имени зоны, итого - 71 символа. И это без возможных поддомено! =)
     
  10. [vs]

    [vs] Суперстар
    Команда форума Модератор

    С нами с:
    27 сен 2007
    Сообщения:
    10.559
    Симпатии:
    632
  11. V1T

    V1T Активный пользователь

    С нами с:
    7 окт 2008
    Сообщения:
    311
    Симпатии:
    0
    Адрес:
    Крым
    Ну , [vs], знаеш, а не жирно им 71 символ в БД писать ещё =) Обойдутся :)
     
  12. Frozen

    Frozen Активный пользователь

    С нами с:
    20 окт 2008
    Сообщения:
    540
    Симпатии:
    0
    Адрес:
    Москва
    echo "<script>alert ('Вы не нажали кнопку Отправить')</script>";

    ggw