Jump to content

lapwing

User
  • Posts

    57
  • Joined

  • Last visited

Everything posted by lapwing

  1. Этот ресурс оказался наиболее понятным для меня. Спасибо.
  2. lapwing

    Формы

    Ну в общем то и не совсем бездумного. Это правило было взято из книжки Игоря Квентора "Соэдание трехколоночного шаблона для Вордпресс". Там в примере он делает обнуление не только отступов и полей, но и рамок (border). А там, где надо - задает. Просто не сообразил, что кнопка это тоже рамка.
  3. lapwing

    Формы

    Всем огромное спасибо. Убрал border:0; - все получилось.
  4. lapwing

    Формы

    Я проверил форму на этом сайте в IE, FF и Опере, везде все то же самое-плоский прямоугольник вместо выпуклой кнопки.
  5. lapwing

    Формы

    Вот ссылка Дело тут не PHP я думаю. Рисунки у меня вроде вставились, сейчас еще попробую. Я что-то сразу не сообразил. У меня сайт на localhoste, как же я на него ссылку дам? Вот скопировал свою форму на сайт на народе, должна сработать ссылка Форма с плоской кнопкой
  6. lapwing

    Формы

    Может быть плохо видно разницу, но у меня кнопка почему-то плоская и на наведение мыши никак не реагирует, а на втором рисунке она выпуклая и окантовка меняет цвет на оранжевый Вот код страницы с формой <?php include ("blocks/bd.php"); $result = mysql_query ("SELECT title,meta_d,meta_k,text FROM settings WHERE page = 'obj'",$db); $myrow = mysql_fetch_array($result); ?> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta name="description" content="<?php echo $myrow['meta_d']; ?>"> <meta name="keywords" content="<?php echo $myrow['meta_k']; ?>"> <meta http-equiv="Content-Type" content="text/html; charset=windows-1251"> <title><?php echo $myrow['title']; ?></title> <link href="style.css" rel="stylesheet" type="text/css"> <script type="text/javascript" src="stuHover.js" type="text/javascript"></script> <script language="JavaScript"> <!-- required = new Array("p1", "p2", "p3"); required_show = new Array("Ваше имя", "Ваш телефон","текст объявления"); function SendForm () { var i, j; for(j=0; j<required.length; j++) { for (i=0; i<document.forms[0].length; i++) { if (document.forms[0].elements[i].name == required[j] && document.forms[0].elements[i].value == "" ) { alert('Пожалуйста, введите ' + required_show[j]); document.forms[0].elements[i].focus(); return false; } } } return true; } --> </script> </head> <body> <div id="container"> <?php include("blocks/header.php");?> <?php include("blocks/top_menu.php");?> <?php include("blocks/left_pan.php");?> <div class = "content"> <?php echo $myrow['text'];?> <?php $result1 = mysql_query("SELECT img FROM captcha",$db); $myrow1 = mysql_fetch_array($result1); if (isset($_REQUEST['a'])) {$a = $_REQUEST['a'];} ?> <form action="addbuy.php" method="post" onSubmit="return SendForm()"> <p style="text-indent:20px">Здесь вы можете оставить свое объявление о покупке либо аренде любой недвижимости (квартиры, дома, участки, офисы, производственные помещения и.т.д.) Пожалуйста заполните все поля. После отправки дождитесь сообщения о том, что данные занесены в базу.</p> <br><br> <p><font color=red>*</font>Введите ваше имя</p> <input name="p1" type="text" size='30' maxlength='30'> <p><font color=red>*</font>Введите телефон для связи</p> <input name="p2" type="text" size='30' maxlength='30'> <p><font color=red>*</font>Введите текст объявления</p> <textarea name="p3" cols="45" rows="5"></textarea> <input name="a" type="hidden" value="<?php echo $a;?>"> <p><input name="submit"type="submit" value="Отправить"></p> </form> </div> <?php include("blocks/prav_pan.php");?> <div class="clearfloat"></div> <div class="empty"></div> </div> <?php include("blocks/copyright.php");?> </body> </html>
  7. lapwing

    Формы

    Подскажите, кто-нибудь сталкивался с такой проблемой: кнопка submit в форме имеет вид плоского прямоугольника и на реагирует на наведение мыши (хотя работает, т.е. при нажатии данные отправляются). Пользуюсь DW и там в режиме разделения кнопка похожа на кнопку-выпуклая, а в localhoste смотрю страницу-кнопка серенький прямоугольничек?
  8. Clayton. спасибо. Буду придерживаться.
  9. "работает - не трогай" - это что, ответ что ли, а в гугле я уже смотрел: 50/50 - метатеги прописываем, метатеги не прописываем.
  10. Если можно, поясните: т.е. подбор ключевых слов не влияет на позиции сайта в поисковиках?
  11. Значит ли это, что, если страница наполнена текстовым контентом, то лучше использовать именно такую запись? Вроде как весь текст со страницы является списком ключевых слов?
  12. Да я не трогаю, мне интересно, почему?
  13. Здравствуйте, уважаемые форумчане! Увидел такую запись <meta name="keywords" content=""> Что происходит, если, как в данном случае, не прописать ключевые слова? Сайт, кстати, занимает лидирующую позицию в выдаче ПС.
  14. Подскажите пожалуйста, как решить следующую задачу?Есть БД, из которой при помощи цикла выводятся записи в укороченном виде(минимальная информация). Как сделать так, чтобы при клике мыши на эту запись в раскрывающемся блоке появлялась полная запись? Нашел хороший пример реализации раскрывающихся блоков: <div id="slider"> <div class="header" id="one-header">Первый блок</div> <div class="content" id="one-content"> <div class="text"> Пример раскрывающегося блока. Пример раскрывающегося блока. </div> </div> сам по себе очень симпатичный, но при попытке загнать его в цикл получается, что для любой записи( второй, третьей и.т.д) полная информация выводится от первой записи. Я так понимаю, что дело здесь в селекторах id="one-header" и id="one-content" и ,возможно, в js-ом файле надо что-то поправить?(в js разбираюсь слабовато, только понял что в данном случае файл js отвечает за то, чтобы информация появлялась именно по клику мыши) Что именно надо поправить?Подскажите! Или может быть такая задача решается как-то по-другому?
  15. lapwing

    Формы и БД

    Спасибо большое. Буду разбираться.
  16. lapwing

    Формы и БД

    Убрал action - все получилось! Ура! Про скобки не очень понял, если я их убираю, пишет ошибку синтаксиса, ну и в учебнике пишут(читаю Хольцнера "PHP в примерах"), что составной оператор должен быть в фигурных скобках. Спасибо всем за участие. Небольшая просьба к demous - ты упоминал про безопасность. Где можно найти толковую книжку или ссылку на эту тему? Еще раз спасибо.
  17. lapwing

    Формы и БД

    Я уже так пробовал function process_data() { $db = mysql_connect ("localhost","buy","buy"); mysql_select_db ("board",$db); mysql_query("SET NAMES cp1251"); $p1=htmlspecialchars(trim($_POST['p1'])); $p2=htmlspecialchars(trim($_POST['p2'])); $p3=htmlspecialchars(trim($_POST['p3'])); $added=$_POST['added']; $a = $_GET['a']; if(isset($_GET['a'])) { switch($_GET['a']) { case 'b_kv' : $result=mysql_query("INSERT INTO buy_kv(p1,p2,p3,added) VALUES('$p1','$p2','$p3','$added')"); break; case 'b_dom' : $result=mysql_query("INSERT INTO buy_dom(p_d1,p_d2,p_d3,added) VALUES('$p1','$p2','$p3','$added')"); break;}} if(mysql_affected_rows()==1) { echo "<p> Данные занесены</p>"; } else { error_log(mysql_error()); echo "<p> Что-то пошло не так</p>"; } } я уже думаю, может эту строчку - $a = $_GET['a']; - надо где-то в другом месте прописать?
  18. lapwing

    Формы и БД

    Уважаемые форумчане! Никто ничем не может помочь?
  19. lapwing

    Формы и БД

    Теперь другая заморочка. If в switch-case я увидел и переставил скобки function process_data() { $db = mysql_connect ("localhost","buy","buy"); mysql_select_db ("board",$db); mysql_query("SET NAMES cp1251"); $p1=htmlspecialchars(trim($_POST['p1'])); $p2=htmlspecialchars(trim($_POST['p2'])); $p3=htmlspecialchars(trim($_POST['p3'])); $added=$_POST['added']; $a=$_POST['a']; if(isset($_POST['a'])) { switch($_POST['a']) { case 'b_kv' : $result=mysql_query("INSERT INTO buy_kv(p1,p2,p3,added) VALUES('$p1','$p2','$p3','$added')"); break; case 'b_dom' : $result=mysql_query("INSERT INTO buy_dom(p_d1,p_d2,p_d3,added) VALUES('$p1','$p2','$p3','$added')"); break; }} if(mysql_affected_rows()==1) { echo "<p> Данные занесены</p>"; } else { error_log(mysql_error()); echo "<p> Что-то пошло не так</p>"; } } и теперь выводится сообщение "Что-то пошло не так" (раньше не выводилось) и данные все равно не вводятся в БД, я попробовал определить существование $a , и похоже, что её нет, т.е. по идее $a присваивается значение по ссылке <a href="add.php?a=b_kv">квартиру</a> в файле obj.php, а в add.php она не видится. Пробовал объединить оба файла-то же самое. Получается, что те переменные, кот. были определены в функции видны вне ее - в файле, а те кот. определялись вовне(т.е. в самом файле) внутри функции не видны?Или я вообще не в том направлении думаю?Подскажите пожалуйста.
  20. lapwing

    Формы и БД

    Меня наверное заклинило - вроде внутри case у меня только команда вставки в БД? Чего я не вижу?
  21. lapwing

    Формы и БД

    честно говоря, не очень понял-переменная added у меня введена в скрытом поле для того, чтобы впоследствии при выборке из таблицы сортировать записи по этому полю
  22. lapwing

    Формы и БД

    Доброго времени суток всем! Пытаюсь решить задачу занесения данных, введенных пользователем с помощью формы в БД в разные таблицы. Есть файл add.php: <?php $errors=array(); if(isset($_REQUEST['seen_already'])) { validate_data(); if(count($errors)>0) { display_errors(); display_form(); } else { process_data(); } } else { display_form(); } function validate_data() { global $errors; if($_REQUEST['p1']=='') { $errors[]="<font color='red'>Имя обязательно для ввода</font>"; } if($_REQUEST['p2']=='') { $errors[]="<font color='red'>Телефон обязателен для ввода</font>"; } if($_REQUEST['p3']=='') { $errors[]="<font color='red'>Вы не ввели текст объявления</font>"; } } function display_errors() { global $errors; foreach($errors as $err) { echo $err,"<br>"; } } function process_data() { $db = mysql_connect ("localhost","buy","buy"); mysql_select_db ("board",$db); mysql_query("SET NAMES cp1251"); $p1=htmlspecialchars(trim($_POST['p1'])); $p2=htmlspecialchars(trim($_POST['p2'])); $p3=htmlspecialchars(trim($_POST['p3'])); $added=$_POST['added']; $result=mysql_query("INSERT INTO buy_kv(p1,p2,p3,added) VALUES('$p1','$p2','$p3','$added')"); if(mysql_affected_rows()==1) { echo "<p> Данные занесены</p>"; } else { error_log(mysql_error()); echo "<p> Что-то пошло не так</p>"; } } function display_form() { $p1=isset($_REQUEST['p1'])?$_REQUEST['p1']:''; $p2=isset($_REQUEST['p2'])?$_REQUEST['p2']:''; $p3=isset($_REQUEST['p3'])?$_REQUEST['p3']:''; $date=date("Y-m-d,H-i-s"); $thisfile=$_SERVER['PHP_SELF']; echo "<FORM METHOD='post' ACTION='$thisfile'>"; echo "<p>Введите ваше имя</p>"; echo "<INPUT NAME='p1' TYPE='text' VALUE='".$p1."'>"; echo "<p>Введите телефон для связи</p>"; echo "<INPUT NAME='p2' TYPE='text' VALUE='".$p2."'>"; echo "<p>Введите текст объявления</p>"; echo "<TEXTAREA NAME='p3' COLS='55' ROWS='10'>$p3</TEXTAREA>"; echo "<br>"; echo "<INPUT TYPE=SUBMIT VALUE='OK'>"; echo "<INPUT TYPE=HIDDEN NAME='added' VALUE='$date'>"; echo "<INPUT TYPE=HIDDEN NAME='seen_already' VALUE='data'>"; echo "</FORM>"; } -замечательно работает и есть файл obj.php в котором я прописываю такие ссылки <a href="add.php?a=b_kv">куплю квартиру</a> <a href="add.php?a=b_dom">куплю дом или участок</a> если при этом я видоизменяю файл add.php следующим образом ........................ function process_data() { $db = mysql_connect ("localhost","buy","buy"); mysql_select_db ("board",$db); mysql_query("SET NAMES cp1251"); $p1=htmlspecialchars(trim($_POST['p1'])); $p2=htmlspecialchars(trim($_POST['p2'])); $p3=htmlspecialchars(trim($_POST['p3'])); $added=$_POST['added']; if(isset($_GET['a'])) {switch($_GET['a']) {case 'b_kv': $result=mysql_query("INSERT INTO buy_kv(p1,p2,p3,added) VALUES('$p1','$p2','$p3','$added')"); break; case 'b_dom': $result=mysql_query("INSERT INTO buy_dom(p_d1,p_d2,p_d3,added) VALUES('$p1','$p2','$p3','$added')"); break; if(mysql_affected_rows()==1) { echo "<p> Данные занесены</p>"; } else { error_log(mysql_error()); echo "<p> Что-то пошло не так</p>"; } } } } ............................................. то выводится только форма, а данные в таблицы не заносятся. Почему? Прошу подсказки.
  23. Понял,спасибо, все получилось.
  24. Здравствуйте! Пытаюсь решить такую задачу: есть форма, при помощи которой данные внесенные посетителем отправляются в базу данных. Если все поля заполнены, то данные успешно заносятся в БД, если одно из полей не заполнено, то выводится сообщение об ошибке, но при этом те поля формы, которые были заполнены так и остаются заполненными, т.е. посетителю не нужно повторно заполнять те поля, которые уже были правильно заполнены. Вот код <?php $errors=array(); if(isset($_REQUEST['seen_already'])) { validate_data(); if(count($errors)>0) { display_errors(); display_form(); } else { process_data(); } } else { display_form(); } function validate_data() { global $errors; if($_REQUEST['p1']=='') { $errors[]="<font color='red'>Имя обязательно для ввода</font>"; } if($_REQUEST['p2']=='') { $errors[]="<font color='red'>Телефон обязателен для ввода</font>"; } if($_REQUEST['p3']=='') { $errors[]="<font color='red'>Вы не ввели текст объявления</font>"; } } function display_errors() { global $errors; foreach($errors as $err) { echo $err,"<br>"; } } function process_data() { $db = mysql_connect ("localhost","buy","buy"); mysql_select_db ("board",$db); mysql_query("SET NAMES cp1251"); $p1=htmlspecialchars(trim($_POST['p1'])); $p2=htmlspecialchars(trim($_POST['p2'])); $p3=htmlspecialchars(trim($_POST['p3'])); $added=$_POST['added']; $result=mysql_query("INSERT INTO buy_kv(p1,p2,p3,added) VALUES('$p1','$p2','$p3','$added')"); if(mysql_affected_rows()==1) { echo "<p> Данные занесены</p>"; } else { error_log(mysql_error()); echo "<p> Что-то пошло не так</p>"; } } function display_form() { $p1=isset($_REQUEST['p1'])?$_REQUEST['p1']:''; $p2=isset($_REQUEST['p2'])?$_REQUEST['p2']:''; $p3=isset($_REQUEST['p3'])?$_REQUEST['p3']:''; $date=date("Y-m-d,H-i-s"); $thisfile=$_SERVER['PHP_SELF']; echo "<FORM METHOD='post' ACTION='$thisfile'>"; echo "Введите ваше имя"; echo "<INPUT NAME='p1' TYPE='text' VALUE='".$p1."'>"; echo "<br>Введите телефон"; echo "<INPUT NAME='p2' TYPE='text' VALUE='".$p2."'>"; echo "<br>Введите текст"; echo "<INPUT NAME='p3' TYPE='text' VALUE='".$p3."'>"; echo "<br>"; echo "<INPUT TYPE=SUBMIT VALUE='OK'>"; echo "<INPUT TYPE=HIDDEN NAME='added' VALUE='".$date."'>"; echo "<INPUT TYPE=HIDDEN NAME='seen_already' VALUE='data'>"; echo "</FORM>"; } ?> Этот код успешно работает, но если я пытаюсь заменить строчку echo "<INPUT NAME='p3' TYPE='text' VALUE='".$p3."'>"; на echo "<TEXTAREA NAME='p3' COLS='55' ROWS='10' VALUE='".$p3."'></TEXTAREA>"; то данные в БД успешно заносятся, но, если посетитель не ввел свое имя или телефон, то текст введенный в третье поле пропадает . Почему? Подскажите пожалуйста.
  25. lapwing

    Формы+PHP

    Большое спасибо всем ответившим. Буду двигаться дальше.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy