PHP . SU
Программирование на PHP, MySQL и другие веб-технологии
Страниц (1): [1]
Найдено сообщений: 8
kopro
Отправлено: 13 Апреля, 2013 - 10:56:35 • Тема: Вывод результата запроса • Форум: Вопросы новичков
Ответов: 1 Просмотров: 122
Есть вот такой обработчик формы, в котором также обьявлены функции:
CODE (
htmlphp ):
скопировать код в буфер обмена
<? php
switch ( $_POST [ 'type' ] )
{
case "SMPP" :
$tip = 4 ;
break ;
case "All" :
$tip = 5 ;
break ;
case "SMTP" :
$tip = 9 ;
break ;
case "HTTP" :
$tip = 4 ;
break ;
case "WEB" :
$tip = 8 ;
break ;
case "FTP" :
$tip = 6 ;
break ;
}
function request ( $tip ) {
$query = "
SELECT baza.id AS id, clienttip AS
TYPE , Name,
TYPE AS Connection, Email
FROM `baza`.`baza` , `baza`.`clienttip` , `baza`.`types`
WHERE `types`.`id` = '$tip '
LIMIT 10;
" ;
print "Connected successfully!" ;
retutn $result ;
}
function viewer ( $result ) {
print "\n <table border=1>\n " ;
print "<tr>\t <td>ID</td>\n \t <td>Client type</td>\n \t <td>Name</td>\n \t <td>Client </td>\n \t <td>Connection type </td>\n \t <$
\t <td>Email</td>\n </tr>\n $";
$i = 1 ;
print "<tr>\n " ;
echo "\t <td>$i </td>\n " ; $i ++;
foreach ( $line as $col_value ) {
print "\t <td>$col_value </td>\n " ;
}
print "</tr>\n " ;
}
print "</table>\n " ;
}
?>
Знаю что выглядит несколько бредово, но хочу научится писать функциями а не все подряд. Вот и изголяюсь. Так вот когда пытаюсь вызвать обьявленные функции:
То получаю ошибку что переменная $result не получена функцией viewer.
Что я делаю не так?
kopro
Отправлено: 05 Марта, 2013 - 01:03:50 • Тема: Проблема с формой "отправка письма с вложением" • Форум: Обсуждение статей
Ответов: 8 Просмотров: 8833
Такой вопрос: если тестировать скрипт на Denwer - письма в sendmail приходят без файла-вложения. Это значит скрипт не работает как надо, или потому что Denwer ?
В коде ничего не менял, как в примере:
CODE (
htmlphp ):
скопировать код в буфер обмена
<? php
if ( empty ( $_POST [ 'mail_to' ] ) ) exit ( "Введите адрес получателя" ) ; // проверяем правильности заполнения с помощью регулярного выражения
if ( ! preg_match ( "/^[0-9a-z_]+@[0-9a-z_^\.]+\.[a-z]{2,3}$/i" , $_POST [ 'mail_to' ] ) ) exit ( "Введите адрес в виде somebody@server.com" ) ; $picture = "" ;
// Если поле выбора вложения не пустое - закачиваем его на сервер
if ( ! empty ( $_FILES [ 'mail_file' ] [ 'tmp_name' ] ) ) {
// Закачиваем файл
$path = $_FILES [ 'mail_file' ] [ 'name' ] ;
if ( copy ( $_FILES [ 'mail_file' ] [ 'tmp_name' ] , $path ) ) $picture = $path ; }
$thm = $_POST [ 'mail_subject' ] ;
$msg = $_POST [ 'mail_msg' ] ;
$mail_to = $_POST [ 'mail_to' ] ;
// Отправляем почтовое сообщение
if ( empty ( $picture ) ) mail ( $mail_to , $thm , $msg ) ; else send_mail( $mail_to , $thm , $msg , $picture ) ;
// Вспомогательная функция для отправки почтового сообщения с вложением (Trianon)
function send_mail( $mail_to , $thema , $html , $path )
{ if ( $path ) {
if ( ! $fp )
{ print "Cannot open file" ;
}
}
$headers .= "MIME-Version: 1.0\n " ;
$headers .= "Content-Type: multipart/mixed; boundary=\" $boundary \" \n " ;
$multipart .= "--$boundary \n " ;
$kod = 'koi8-r' ; // или $kod = 'windows-1251';
$multipart .= "Content-Type: text/html; charset=$kod \n " ;
$multipart .= "Content-Transfer-Encoding: Quot-Printed\n \n " ;
$multipart .= "$html \n \n " ;
$message_part = "--$boundary \n " ;
$message_part .= "Content-Type: application/octet-stream\n " ;
$message_part .= "Content-Transfer-Encoding: base64\n " ;
$message_part .= "Content-Disposition: attachment; filename = \" " . $path . "\" \n \n " ;
$multipart .= $message_part . "--$boundary --\n " ;
if ( ! mail ( $mail_to , $thema , $multipart , $headers ) ) { echo "Fail" ; //если не письмо не отправлено
}
else { //// если письмо отправлено
echo "Weeeee" ;
}
}
?>
kopro
Отправлено: 03 Марта, 2013 - 13:15:42 • Тема: Разделение кода • Форум: Вопросы новичков
Ответов: 2 Просмотров: 123
Спасибо, по разделению кода - вопрос отпал, но вот как связать чекбокс - с таблицей, что б отображалось только выбранное..?
Тоесть:
CODE (
htmlphp ):
скопировать код в буфер обмена
<? PHP
function DbQuery( $query ) {
$arr [ ] = $row ;
}
return $arr ;
}
require 'bd.php' ;
$types = DbQuery ( "SELECT distinct type FROM `clients` ;" ) ;
$table = DbQuery ( "SELECT name, email, lang FROM clients;" ) ;
require 'inform.php' ;
?>
И шаблон в виде:
CODE (
htmlphp ):
скопировать код в буфер обмена
<!DOCTYPE html>
< html>
< head>
< title> Inform interface</ title>
<!-- < link type= "text/css" rel= "stylesheet" href= "stylesheet.css" /> -->
</ head>
< body>
< div id= 'header' >< p> Ololo</ p></ div>
< div id= 'content' >< form action= "inform.php" method= "post" >
<? php foreach ( $arr as $str ) ?>
< input name= "type" type= "radio" value= "<?$str ['Type']?> "> SMPP
< input name= "type" type= "radio" value= "<?$str ['Type']?> " checked> All
< input name= "type" type= "radio" value= "<?$str ['Type']?> "> SMTP
< input name= "type" type= "radio" value= "<?$str ['Type']?> "> HTTP
< input name= "type" type= "radio" value= "<?$str ['Type']?> "> WEB
< input type= "submit" value= "Показать" >
<!-- А дальше? Как привязать отображение столбцов таблицы в зависимости от "type" ? -->
< table>
< tr>
< td> ##</ td>
< td> Connect</ td>
< td> Клиент</ td>
< td> Contact</ td>
</ tr>
< tr>
< td> <? $table [ type] ?> </ td>
</ tr>
</ table>
< form>
</ div>
< div id= 'footer' ></ div>
</ body>
</ html>
kopro
Отправлено: 03 Марта, 2013 - 11:32:12 • Тема: Разделение кода • Форум: Вопросы новичков
Ответов: 2 Просмотров: 123
Есть страница, которая должна отображать таблицу. Данные в таблице берутся из БД
Таблица в зависимости от выбранных checkbox-ов имеет разное колличество столбцов. При всем при этом желательно максимально возможно разделить html и php код.
CODE (
htmlphp ):
скопировать код в буфер обмена
<!DOCTYPE html>
< html>
< head>
< title> Inform interface</ title>
<!-- < link type= "text/css" rel= "stylesheet" href= "stylesheet.css" /> -->
</ head>
< body>
< div id= 'header' >< p> Ololo</ p></ div>
< div id= 'content' >< form method= "post" action= "control.php" >
< input name= "type" type= "radio" value= "SMPP" > SMPP
< input name= "type" type= "radio" value= "SMPP" checked> SMPP
< input name= "type" type= "radio" value= "SMTP" > SMTP
< input name= "type" type= "radio" value= "HTTP" > HTTP
< input name= "type" type= "radio" value= "WEB" > WEB
< table>
< tr>
< td> ##</ td>
< td> Connect</ td>
< td> Клиент</ td>
< td> IW</ td>
< td> Bulk</ td>
< td> Language</ td>
< td> SMPP</ td>
< td> SMTP</ td>
< td> FTP</ td>
< td> HTTP</ td>
< td> WEB</ td>
< td> SS7</ td>
< td> Contact</ td>
</ tr>
</ table>
</ form></ div>
< div id= 'footer' ></ div>
</ body>
</ html>
Подскажите, как сделать что б отображались только выбранные чекбоксом поля (по какому принципу будет работать control.php )
А так же как разделить этот индекс, и код с запросом данных из БД. Потому как у меня работает только все вместе:
CODE (
htmlphp ):
скопировать код в буфер обмена
<?
$query = "
SELECT name, Type , email, lang FROM clients
where smpp=1
order by lang;
" ;
print "\n <table border=1>\n " ;
print "
<tr>\t
<td>## </td>\n \t
<td>Клиент </td>\n \t
<td>Подключение </td>\n \t
<td>Contact </td>\n \t
<td>Language </td>\n \t
</tr>\n
" ;
$i = 1 ;
{
print "<tr>\n " ;
echo "\t <td>$i </td>\n " ; $i ++;
foreach ( $line as $col_value )
{
print "\t <td>$col_value </td>\n " ;
}
print "</tr>\n " ;
}
print "</table>\n " ;
//закрытие соединение (рекомендуется)
?>
kopro
Отправлено: 01 Ноября, 2012 - 04:47:01 • Тема: Динамический список • Форум: Вопросы новичков
Ответов: 10 Просмотров: 450
Спасибо, помогли. Правда есть еще один ньюанс - если выбрать второй раз другой пункт списка - предыдущее поле остается отображенным . Необходимо добавить в скрипт-обработчик - обновление страницы при каждом новом выборе пункта меню? Каким образом это делается?
kopro
Отправлено: 27 Октября, 2012 - 16:13:36 • Тема: Динамический список • Форум: Вопросы новичков
Ответов: 10 Просмотров: 450
Прошу прощения, но интерфейс в целом - на пхп, а без небольших javascrit-вставок обходится не получается. Если знаете как решить подобную задачу чисто на пхп - буду рад любому решению, помощи..
kopro
Отправлено: 27 Октября, 2012 - 15:58:32 • Тема: Динамический список • Форум: Вопросы новичков
Ответов: 10 Просмотров: 450
Ну собственно как это сделать. Я так понимаю что в подобном коде:
Каждому элементу списка нужно присвоить id, и связать с их помощью связать соответствующие элементы, с <div ...style.disabled=none;> - полями, и написать в селекте функцию для onclick, которая будет отображать поля. Но как должна выглядеть подобная функция, и как связываются пункты? Хотя бы в самом простом виде..
kopro
Отправлено: 27 Октября, 2012 - 15:39:55 • Тема: Динамический список • Форум: Вопросы новичков
Ответов: 10 Просмотров: 450
Необходимо создать выпадающий список, после выбора элемента которого, стают видны остальные поля (разнообразные формы) на странице(в зависимости от выбранного пункта).
Страниц (1): [1]
Powered by ExBB FM 1.0 RC1. InvisionExBB