Jump to content

rus

Expert
  • Posts

    5,943
  • Joined

  • Last visited

  • Days Won

    40

Everything posted by rus

  1. Нужна ссылка на страницу.
  2. По первой проблеме быть может оверфлоу:хидден; а по второй быть может позишен:абсолют; либо зет-индекс: ...;
  3. rus

    Мир жесток!

    Ага - World Without War
  4. rus

    modrewrite

    А чуток в низ прокрутить страницу в этом разделе не пробовали? Там есть топик, он вам поможет.
  5. Far вам в помощь! Поиск по файлам Alt+F7 --> g->url
  6. rus

    Массивы

    Не обижаюсь, над советом подумаю.
  7. Я тоже думаю что с пагинацией было бы удобнее, чем крутить колесико.
  8. rus

    Массивы

    Суть задачи заключается вот в этой теме. Сразу оговорюсь что денег я за это не получу, так как решил просто помоч, да и самому показалась задачка интересная. Вот полный листинг кода: HTML <?php error_reporting (0); session_start(); ?> <html> <head> <script language="JavaScript" type="text/javascript"> // TextArea MaxLength var ns6=document.getElementById&&!document.all function restrictinput(maxlength,e,placeholder){ if (window.event&&event.srcElement.value.length>=maxlength) return false else if (e.target&&e.target==eval(placeholder)&&e.target.value.length>=maxlength){ var pressedkey=/[a-zA-Z0-9\.\,\/]/ if (pressedkey.test(String.fromCharCode(e.which))) e.stopPropagation() } } function countlimit(maxlength,e,placeholder){ var theform=eval(placeholder) var lengthleft=maxlength-theform.value.length var placeholderobj=document.all? document.all[placeholder] : document.getElementById(placeholder) if (window.event||e.target&&e.target==eval(placeholder)){ if (lengthleft<0) theform.value=theform.value.substring(0,maxlength) placeholderobj.innerHTML=lengthleft } } function displaylimit(theform,thelimit){ var limit_text='<em>Разрешается ввести не более <span id="'+theform.toString()+'" style="color: #888;">'+thelimit+'</span> символов в форму</em>' if (document.all||ns6) document.write(limit_text) if (document.all){ eval(theform).onkeypress=function(){ return restrictinput(thelimit,event,theform)} eval(theform).onkeyup=function(){ countlimit(thelimit,event,theform)} } else if (ns6){ document.body.addEventListener('keypress', function(event) { restrictinput(thelimit,event,theform) }, true); document.body.addEventListener('keyup', function(event) { countlimit(thelimit,event,theform) }, true); } } </script> <script> var c=2; //счётчик количества строк function addline() { c++; // увеличиваем счётчик строк s=document.getElementById('table').innerHTML; // получаем HTML-код таблицы s=s.replace(/[\r\n]/g,''); // вырезаем все символы перевода строк re=/(.*)(<p id=.*>)(<\/p>)/gi; // это регулярное выражение позволяет выделить последнюю строку таблицы s1=s.replace(re,'$2'); // получаем HTML-код последней строки таблицы s2=s1.replace(/\[\d+\]/gi,'['+c+']'); // заменяем все цифры к квадратных скобках // на номер новой строки s2=s2.replace(/(rmline\()(\d+\))/gi,'$1'+c+')'); // заменяем аргумент функции rmline на номер новой строки s=s.replace(re,'$1$2'+s2+'$3'); // создаём HTML-код с добавленным кодом новой строки document.getElementById('table').innerHTML=s; // возвращаем результат на место исходной таблицы return false; // чтобы не происходил переход по ссылке } function rmline(q) { if (c==2) return false; else c--; // если раскомментировать предыдущую строчку, то последний (единственный) // элемент удалить будет нельзя. s=document.getElementById('table').innerHTML; s=s.replace(/[\r\n]/g,''); re=new RegExp('<p id="?newline"? nomer="?\\['+q+'.*?<\\/p>','gi'); // это регулярное выражение позволяет выделить строку таблицы с заданным номером s=s.replace(re,''); // заменяем её на пустое место document.getElementById('table').innerHTML=s; return false; } </script> </head> <body> <form method="Post" action="sendmail.php" name="limit"> <table class="table_content"> <tr> <td class="td_border">Ваше имя<font color="#FF0000">*</font>:</td> <td class="td_border"><input type="Text" name="name1"/></td> </tr> <tr> <td class="td_border">Ваш E-Mail<font color="#FF0000">*</font>:</td> <td class="td_border"><input type="Text" name="email1"/></td> </tr> <tr> <td class="td_border">Тема сообщения<font color="#FF0000">*</font>:</td> <td class="td_border"><input type="Text" name="theme"/></td> </tr> <tr> <td class="td_border">Сообщение:</td> <td class="td_border"> <textarea cols=40 rows=5 name="message"> Привет друг %Такой-то% Это твой друг %Такой-то%, хочу сообщить тебе об интересном сайте таком-то... Вот %ссылка% на этот сайт Если будут вопросы - спрашивай на форуме Удачи мой друг %Такой-то% </textarea> <div align="center"><script>displaylimit("document.limit.message",1000)</script></div></td> </tr> <tr> <td class="td_border" colspan="2" align="center"> <h3>Введите текст с картинки:</h3> <p><img src="captcha/index.php?<?php echo session_name()?>=<?php echo session_id()?>"></p> <p><input type="text" name="keystring"></p> </td> </tr> </table> <div id="table"> <p id="newline" nomer="[0]"> Имя<font color="#FF0000">*</font> <input type="text" name="name[0]"> E-mail<font color="#FF0000">*</font> <input type="text" name="email[0]"> <a href="#" onclick="return rmline(0);"><img src="minus.gif" border="0"></a> </p> <p id="newline" nomer="[1]"> Имя<font color="#FF0000">*</font> <input type="text" name="name[1]"> E-mail<font color="#FF0000">*</font> <input type="text" name="email[1]"> <a href="#" onclick="return rmline(0);"><img src="minus.gif" border="0"></a> </p> <p id="newline" nomer="[2]"> Имя<font color="#FF0000">*</font> <input type="text" name="name[2]"> E-mail<font color="#FF0000">*</font> <input type="text" name="email[2]"> <a href="#" onclick="return rmline(0);"><img src="minus.gif" border="0"></a> </p> </div> <p><a href="#" onclick="return addline();"><img src="plus.gif" border="0"></a></p> <input type="image" src="submit.gif" /> </form> </body> </html> PHP <? session_start(); $date = date("d/m/Y"); $name1 = $_POST['name1']; $theme = $_POST['theme']; $email1 = $_POST['email1']; $message = $_POST['message']; $name = $_POST['name']; $email = $_POST['email']; $arr2 = array($email[1]); $arr = array($name[1]); if(count($_POST)>0) { if(isset($_SESSION['captcha_keystring']) && $_SESSION['captcha_keystring'] == $_POST['keystring']) { if (empty($_POST['name1']) or strlen($name1) < 5) echo '<p>Вы не указали фамилию и имя!</p>'; if (empty($_POST['theme']) or strlen($theme) < 5) echo '<p>Вы не указали тему сообщения.</p>'; if(!preg_match("/[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}/i", $_POST['email1'])) echo '<p>Email не был указан, или указан некорректный email!</p> <a href="java script:history.back(1)">Вернуться назад</a>'; else { foreach ($arr as $key => $value) { $text = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html> <head> <title>'. $from . '</title> <style media="screen" type="text/css"> table { padding:5px; margin:5px; border:#E2E2E2 solid 2px; width:600px; text-align: center; } td { border:#E2E2E2 solid 1px; width:100px; padding:5px; margin:5px; text-align: center; color:#3E73C8; } body { margin: 0; padding: 6px; border: 0; background: #fff; text-align: center; } </style> </head> <body> <table> <tr> <td>Имя отправителя:</td> <td>'.$name1.'</td> </tr> <tr> <td>Email отправителя:</td> <td>'.$email1.'</td> </tr> <tr> <td>Тема сообщения:</td> <td>'.$theme.'</td> </tr> <tr> <td>Текст сообщения:</td> <td> Привет друг <strong>' . $value . '</strong> Это твой друг <strong>'.$name1.'</strong>, хочу сообщить тебе об интересном сайте таком-то... Вот %ссылка% на этот сайт Если будут вопросы - спрашивай на форуме Удачи мой друг <strong>' . $value . '</strong></td> </tr> <tr> <td>Дата отправки сообщения:</td> <td><div style="line-height: 30px;"> (' . $date . ')</div></td> </tr> </table> </body> </html>'; } foreach ($arr2 as $key => $value) { $toMail = $value; } $subject = "Тема сообщения: $theme"; $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=windows-1251 \r\n"; $headers .= "From: $email1\r\n"; mail ($toMail, $subject, $text, $headers); echo '<p>Сообщение успешно отправлено.</p> <a href="java script:history.back(1)">Вернуться назад</a>'; } echo '<p>Код введен правильно!</p>'; } else { echo '<p>Ошибка - не введен код подтверждения!<br /> Либо введен неверно!</p> <p><a href="java script:history.back(1)">Вернуться назад</a></p>'; } } unset($_SESSION['captcha_keystring']); ?> А вот как выглядет заготовка в реале
  9. rus

    Массивы

    Спасибо, но немного не то, ну либо просто не понял. Вот как у меня получилось в обработчике: $arr = array($name[0]); foreach ($arr as $key => $value) { Привет <strong>' . $value . '</strong> } Тут в принципе все получилось, но это не совсем то, так как надо это связать с отсыланием на рызные e-mail адреса. В моем случае (как есть сейчас) отсылает только на один адрес, так как я в индексе указал [0], вот на него и отсылается: foreach ($arr2 as $key => $value) { $toMail = $value; $subject= "Тема сообщения: $theme"; $from="$res"; $headers = "MIME-Version: 1.0\n"; $headers .= "Content-type: text/html; charset=windows-1251 \r\n"; $headers.= "From: $from $email1\r\n"; mail ($toMail, $subject, $text, $headers); } Я же пытаюсь получить зависимость, то есть: в форме допустим 6 инпутов —-- имя —-- email —-- имя —-- email —-- имя —-- email В зависимости от того какое имя и email в тексте сообщения будет подставлено имя введенное в инпуте: foreach ($arr as $key => $value) { Привет <strong>' . $value . '</strong> } И отослано на email указаный в инпуте.
  10. rus

    Массивы

    Вот смотри: С формы: <input type="text" name="name[0]"> В обработчике: $name = $_POST['name']; $name = array($name); foreach ($name as $_name=>$val) И далее: Привет '.$val.' Так? или я че-то не понял...
  11. Рискну предположить что программа идет сверху вниз и записала в память что a = 1, поэтому второе значение a = 3 - вроде как не учитывается.
  12. rus

    Массивы

    Всем здрасте! Ребят, я конечно понимаю что вопрос очень простой для кого-то покажется, но все же... Инфы по массивам очень много в инете и вобщем то все прекрасно описано, но мне надо знать какую именно функцию применить в моем случае. Существует форма, в форме автоматом создаются поля типа инпут, в которых так же автоматом создаются name="name[0]", name="name[1]", name="name[2]" и т.д... соответственно в обработчике мне надо вытащить значения, которые пришли постом из name="name[]" обритившись по индексу, но не к конкретному, а ко всем индексам. Пробовал копать в сторону array_keys но что то не понял что дальше делать с результатом.
  13. rus

    S1 в livejournal

    Прописывать стили можно тремя способами: 1) Как у вас непосредственно в теге. 2) Каскадной таблицей так же в теге непосредственно. 3) Каскадной таблицей в отдельном файле, либо в хедере страницы. З.Ы. эти записи различаются в написании если вы заметили.
  14. rus

    S1 в livejournal

    { td{bgcolor: none;}} - так не пишут. td{background-color:transparent;} - так правильно.
  15. Можешь попробовать разобрать этот пример, правда его еще надо оптимизировать, так как код с массивом уж больно велик получился.
  16. Ниче не понял... именно отображение? Что за окно выбора? Чем отобразить хотите? Поподробнее распишите задачу.
  17. Ключевое слово type="image" src="sample.gif " UPD: невнимательно прочитал
  18. Можно и мышой, есть маленькие - удобные очень, а табом действительно не удобно.
  19. Вот я бы посмотрел на тебя как ты по ссылкам ходишь табом. К примеру даже на этом форуме.
  20. По гимпу полно в сети уроков и можно различные эффекты сделать не хуже чем в фотошопе, просто нужна голова и руки.
  21. Ты знаешь, потихоньку, по мере возможности конечно. Тут взял пример из книги, а он нифинты не пашет... не понимаю почему, вроде бы простой примерчик то. Но конкретно этот пример и к php тоже относится.
  22. Тут будет задействован еще и js, так как надо без перезагрузки выводить текст введеный в поле, а так же создание дополнительных полей в режиме реального времени. И еще скорее всего надо будет делать скрытые поля хидден, хотя может и без них...
  23. Ноль не является строкой? Сдаюсь...
  24. Вот теперь все понятно. Последний вопрос: кнопка "добавить друга" - по нажатию добавляется еще два поля "Имя" и "Емаил"? кнопка "Знак минус" - удаляет по два поля "Имя" и "Емаил" соответственно? Остальное все понятно вроде.
×
×
  • 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