![](https://htmlforum.dev/uploads/set_resources_18/84c1e40ea0e759e3f1505eb1788ddf3c_pattern.png)
kilogram
User-
Posts
120 -
Joined
-
Last visited
-
Days Won
4
Content Type
Profiles
Forums
Calendar
Store
Everything posted by kilogram
-
Написал простой запрос вставки и ничего не добавилось, вывожу - ничего не выводится и ошибок не выдает, просто пустой экран, почему? <?php $db = mysql_connect('localhost', 'root', '111'); mysql_select_db('test',$db); mysql_query('INSERT INTO cat(number,name,age) VALUES (,"Петя",28)'); $rez = mysql_query('SELECT * FROM `cat`'); while($r = mysql_fetch_assoc($rez)) echo $r["number"],$r["name"],$r["age"]; ?>
-
Не хочет что-то вытаскивать с базы, вот написал банальный код. <?php $db = mysql_connect('localhost', 'root', '111'); mysql_select_db('cat',$db); $rez = mysql_query('SELECT * FROM cat'); while($r = mssql_fetch_assoc($rez)) echo $r['$name']; ?> Fatal error: Call to undefined function mssql_fetch_assoc() in C:\www\htdocs\test.ru\www\index.php on line 5
-
Снес Программу MySQL-Front и все заработало.
-
Захожу http://localhost/phpmyadmin все нормлаьно заходится. Вот файл config.inc.php <?php $i = 0; $i++; $cfg['Servers'][$i]['host'] = 'localhost'; $cfg['Servers'][$i]['extension'] = 'mysqli'; $cfg['Servers'][$i]['connect_type'] = 'tcp'; $cfg['Servers'][$i]['compress'] = false; $cfg['Servers'][$i]['auth_type'] = 'config'; $cfg['Servers'][$i]['user'] = 'root'; $cfg['Servers'][$i]['password'] = '111'; /* Пароль пользователя root. */ $cfg['Servers'][$i]['controluser'] = 'pma'; /* Имя созданного вами только что пользователя для доступа к расширенным таблицам. */ $cfg['Servers'][$i]['controlpass'] = 'пароль'; /* А здесь его пароль. */ $cfg['Servers'][$i]['pmadb'] = 'phpmyadmin'; $cfg['Servers'][$i]['bookmarktable'] = 'pma_bookmark'; $cfg['Servers'][$i]['relation'] = 'pma_relation'; $cfg['Servers'][$i]['table_info'] = 'pma_table_info'; $cfg['Servers'][$i]['table_coords'] = 'pma_table_coords'; $cfg['Servers'][$i]['pdf_pages'] = 'pma_pdf_pages'; $cfg['Servers'][$i]['column_info'] = 'pma_column_info'; $cfg['Servers'][$i]['history'] = 'pma_history'; $cfg['Servers'][$i]['designer_coords'] = 'pma_designer_coords'; ?> Написал такой код: <?php $link = mysql_connect('localhost', 'root', '111'); if (!$link) { die('Ошибка соединения: ' . mysql_error()); } echo 'Успешно соединились'; mysql_close($link); ?> Получаю такую ошибку: Warning: mysql_connect() [function.mysql-connect]: Access denied for user 'root'@'localhost' (using password: YES) in C:\www\htdocs\test.ru\www\index.php on line 3 Ошибка соединения: Access denied for user 'root'@'localhost' (using password: YES) Что это может быть?
-
У провайдера FTP использует 21 порт для передачи команд. Поэтому 21. У него вроде разрешены, у этой программы.
-
Зарегистрировал хостинг на hut4.ru для учебных целей, читаю Котова, там пишет что мощное средство есть Mysql-Front Не могу никак подключиться к своей базе данных на сервере hut4.ru Мой сайт: santa.hut4.ru Подскажите, может не так что ввожу. Вот скрин ввода.
-
А еще не все хостинги "прямо" поддерживают mb-функции, слышал. А что использовать если не поддерживают?
-
В файле 1.txt кирилица, вытаскивать нужно функцией file_get_contents $t = file_get_contents('1.txt'); $get = mb_detect_encoding($t); echo iconv($get,'UTF-8',$t); Не выводит,хоть все правильно сделал, выдает ошибку: Notice: iconv() [function.iconv]: Detected an illegal character in input string in C:\www\htdocs\test.ru\www\index.php on line 6
-
Читаю Котова, там приводится такой код. Файл index.php <?php ## Отправка почты по шаблону (без кодирования). // Подключаем функцию mailx() (см. ниже). include_once "mailx.php"; include_once "mailenc.php"; // Этот текст может быть получен, например, из базы данных, // или являться сообщением форума или гостевой книги. $text = "Cookies need love like everything does."; // Получатели письма. $tos = array("usa-1200@mail.ru", "swd200@yandex.ru","swd200@qip.ru"); // Считываем шаблон. $tpl = file_get_contents("mail.eml"); // Отправляем письма в цикле по получателям. foreach ($tos as $to) { // Заменяем элементы шаблона. $mail = $tpl; $mail = strtr($mail, array( "{TO}" => $to, "{TEXT}" => $text, )); // Вызываем mailx(), включенную из файла. mailx($mail); } ?> Файл mailenc.php <?php ## Кодирование заголовков письма. // Корректно кодирует все заголовки в письме $mail с использованием // метода base64. Кодировка письма определяется автоматически на основе // заголовка Content-type. Возвращает полученное письмо. function mailenc($mail) { // Разделяем тело сообщения и заголовки. list ($head, $body) = preg_split("/\r?\n\r?\n/s", $mail, 2); // Определяем кодировку письма по заголовку Content-type. $encoding = ''; $re = '/^Content-type:\s*\S+\s*;\s*charset\s*=\s*(\S+)/mi'; if (preg_match($re, $head, $p)) $encoding = $p[1]; // Проходимся по всем строкам-заголовкам. $newhead = ""; foreach (preg_split('/\r?\n/s', $head) as $line) { // Кодируем очередной заголовок. $line = mailenc_header($line, $encoding); $newhead .= "$line\r\n"; } // Формируем окончательный результат. return "$newhead\r\n$body"; } // Кодирует в строке максимально возможную последовательность // символов, начинающуюся с недопустимого символа и НЕ // включающую E-mail (адреса E-mail обрамляют символами < и >). // Если в строке нет ни одного недопустимого символа, преобразование // не производится. function mailenc_header($header, $encoding) { // Кодировка не задана - делать нечего. if (!$encoding) return $header; // Сохраняем кодировку в глобальной переменной. Без использования // ООП это - единственный способ передать дополнительный параметр // callback-функции. $GLOBALS['mail_enc_header_encoding'] = $encoding; return preg_replace_callback( '/([\x7F-\xFF][^<>\r\n]*)/s', 'mailenc_header_callback', $header ); } // Служебная функция для использования в preg_replace_callback(). function mailenc_header_callback($p) { $encoding = $GLOBALS['mail_enc_header_encoding']; // Пробелы в конце оставляем незакодированными. preg_match('/^(.*?)(\s*)$/s', $p[1], $sp); return "=?$encoding?B?".base64_encode($sp[1])."?=".$sp[2]; } ?> Файл mailx.php <?php ## Более удобная отправка почты. // Функция отправляет письмо, полностью заданное в параметре $mail. // Корректно обрабатываются заголовки To и Subject. function mailx($mail) { // Разделяем тело сообщения и заголовки. list ($head, $body) = preg_split("/\r?\n\r?\n/s", $mail, 2); // Выделяем заголовок To. $to = ""; if (preg_match('/^To:\s*([^\r\n]*)[\r\n]*/m', $head, $p)) { $to = @$p[1]; // сохраняем $head = str_replace($p[0], "", $head); // удаляем из исходной строки } // Выделяем Subject. $subject = ""; if (preg_match('/^Subject:\s*([^\r\n]*)[\r\n]*/m', $head, $p)) { $subject = @$p[1]; $head = str_replace($p[0], "", $head); } // Отправляем почту. Внимание! Опасный прием! mail($to, $subject, $body, trim($head)); } ?> Файл mail.eml Привет, {TO}! {TEXT} Это сообщение сгенерировано роботом - не отвечайте на него. Запускаю код на локальном компьютере, приходит письмо всем трем получателям: $tos = array("usa-1200@mail.ru", "swd200@yandex.ru","swd200@qip.ru"); Забросил на сервер http://santa.hut4.ru/ приходит ТОЛЬКО 1 письмо НА usa-1200@mail.ru. Почему так?
-
Попробовал отправлять с реального адреса эл. почты, в маил.ру, яндекс. ру, qip.ru, meta.ua, gmail.com приходит во входящие, в ukr.net,i.ua в спам. Слышал что лучше пользоваться какими-то библиотеками для того чтобы в СПАМ не попадали письма, может кто знает какими?
-
Все, исправил ошибку. Оказывается в 3-ем параметре функции mail -> From: нужно было указать такое же название почты, как и в кофигурационном файле force_sender=usa-1400@mail.ru Немного подкоректировал код, чтобы приходили письма в русской кодирове тема и само письмо. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Simple Mail</title> </head> <body> <?php @$addr = $_POST['addr']; @$theme = $_POST['theme']; @$text = $_POST['text']; if (isset($addr) && isset($theme) && isset($text) && $addr != "" && $theme != "" && $text != "") { if (mail($addr, $theme, $text, "From: usa-1000@mail.ru \r\nContent-type: text/html; charset=UTF-8 \r\n")) { echo "<h3>Сообщение отправлено</h3>"; } else { echo "<h3>При отправке сообщения возникла ошибка</h3>"; } } ?> <form action="index.php" method="post"> <p> <label for="addr">eMail:</label> <input type="text" name="addr" id="addr" size="30" /> </p> <p> <label for="theme">Тема письма:</label> <input type="text" name="theme" id="theme" size="30" /> </p> <p> <label for="text">Текст письма:</label> <textarea rows="10" cols="20" name="text" id="text"></textarea> </p> <p> <input type="submit" value="Отправить" /> </p> </form> </body> </html> в маил.ру,яндекс.ру пришло в папку входящие, в ukr.net пришло в папку СПАМ, в i.ua тоже в СПАМ,нужно что-то решать. Как сделать чтобы не приходило в СПАМ?
-
sendmail_from = SMTP = smtp_port = 25 sendmail_path = "C:\php\sendmail\sendmail.exe -t" Вот так настроил и такой код <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Simple Mail</title> </head> <body> <?php $addr = 'usa-1200@mail.ru'; $theme = 'Для тебя'; $text = 'Приве малыш! Как дела?'; if (isset($addr) && isset($theme) && isset($text) && $addr != "" && $theme != "" && $text != "") { if (mail($addr, $theme, $text, "From: vova_33@mail.ru")) { echo "<h3>Сообщение отправлено</h3>"; } else { echo "<h3>При отправке сообщения возникла ошибка</h3>"; } } ?> <form action="index.php" method="post"> <p> <label for="addr">eMail:</label> <input type="text" name="addr" id="addr" size="30" /> </p> <p> <label for="theme">Тема письма:</label> <input type="text" name="theme" id="theme" size="30" /> </p> <p> <label for="text">Текст письма:</label> <textarea rows="10" cols="20" name="text" id="text"></textarea> </p> <p> <input type="submit" value="Отправить" /> </p> </form> </body> </html> Не работает. Что делать?
-
По данной инструкции http://www.simplecoding.org/php-mail-pod-windows.html, немного с изменениями неважными написал код. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>Simple Mail</title> </head> <body> <?php $addr = 'usa-1200@mail.ru'; $theme = 'Для тебя'; $text = 'Приве малыш! Как дела?'; if (isset($addr) && isset($theme) && isset($text) && $addr != "" && $theme != "" && $text != "") { if (mail($addr, $theme, $text, "From: vova_33@mail.ru")) { echo "<h3>Сообщение отправлено</h3>"; } else { echo "<h3>При отправке сообщения возникла ошибка</h3>"; } } ?> <form action="index.php.php" method="post"> <p> <label for="addr">eMail:</label> <input type="text" name="addr" id="addr" size="30" /> </p> <p> <label for="theme">Тема письма:</label> <input type="text" name="theme" id="theme" size="30" /> </p> <p> <label for="text">Текст письма:</label> <textarea rows="10" cols="20" name="text" id="text"></textarea> </p> <p> <input type="submit" value="Отправить" /> </p> </form> </body> </html> В поле email ввожу usa-1200@mail.ru В поле тема пишу "Привет" и текст Привет Петя! в поле текст, нажимаю отправить. Выдает такое сообщение. Что делать? sendmail.exe лежит у меня по такому пути: C:\php\sendmail\sendmail.exeВ php.ini Указал в php.ini так: smtp_port = 2525 SMTP = sendmail_from = sendmail_path = "C:\php\sendmail\sendmail.exe -t" Файл sendmail.exe действительно у меня лежит по такому пути как я указал выше. После отправки, выдает такое сообщение: Not FoundThe requested URL /mailer.php was not found on this server. Помогите, что делать?
-
<?php header('Content-Type:text/html; charset=UTF-8'); if (!headers_sent()) { header('Location: http://www.example.com/'); exit; } ?> Передаю функцией хидер заголовки в документ, а затем строкой ниже проверяю, были ли переданны заголоовки или нет. Вот передал, а оно все равно сделало переадресацию хоть и заголовок передался в первой строке кода.
-
Читаю Котерова "Регулярные выражения". Там пишут что \w - любая буква или цифра. Написал такой код: <form action="index.php" method="post"> <input type="text" name="username"/> <input type="submit" value="Отправить" /> </form> <?php ///[a-zA-Z]+-[a-zA-Z]/ // preg_match("шаблон_поиска", "строка_в_которой_проводится_поиск", массив_с_результами_поиска) if(isset($_POST['username'])) $user = $_POST['username']; else { $user = ''; exit;} echo $user.'<br>'; if(preg_match("/\\w/", $user)) { echo "Имя пользователя задано в правильном формате"; } else { echo "Имя пользователя задано в <b><font color='red'>неправильном формате</font></b>"; } ?> Почему не работает кирилица в \w? 2. Там пишут что есть выражения, которые определяют группу символов. пишу так: if(preg_match("/[[:alpha:]]/", $user)) { определяет только латиницу почему то 3. Пишут что знак "*" соответствует 0 или больше символов, пишу так /a-*-/ а затем ввожу одну букву, выдает ошибка, оказывается нужно 1 и более, а не ноль и более. 4. Пробую так: if(preg_match("/a{1}/", $user)) { хоть напишу один раз или 10 раз букву "а" выдает что верно, хотя здесь ограничитель в один раз Пишу так: if(preg_match("/a{1,2}/", $user)) { Букву "а" согласно данному выражению я могу вводить от 1-2 раз, ввожу 10 раз букву "а" и выдает что верно 5. Пишут что если знак "?"(квантификатор), перед ним символ может повторятся только 0 или 1 раз(но не более!). Пишу такой код: if(preg_match("/a?/", $user)) { Ввожу 10 раз букву а латинскую и выдает что верно. Если кто может, объясните вот эти действия почему так и также почему не работет кирилица. Заранее благодарю.
-
Вот взял исходник, нашел папку этого календаря и выдает что 1 июня это воскресенье, что за бред? Автор книги ошибся что ли? Что может не правильно быть в коде, как-то странно. Вот оригинал автора с книги. Вот на сервер забросил результат http://santa.comoj.com/ <?php ## Календарь на текущий месяц. // Функция формирует двумерный массив, представляющий собой // календарь на указанный месяц и год. Массив состоит из строк, // соответствующих неделям. Каждая строка - массив из семи // элементов, которые равны числам (или пустой строке, если // данная клетка календаря пуста). function makeCal($year, $month) { // Получаем номер дня недели для 1 числа месяца. Корректируем // его, чтобы воскресенье соответствовало числу 7, а не числу 0. $wday = JDDayOfWeek(GregorianToJD($month, 1, $year), 0); if ($wday == 0) $wday = 7; // Начинаем с этого числа в месяце (если меньше нуля // или больше длины месяца, тогда в календаре будет пропуск). $n = - ($wday - 2); $cal = array(); // Цикл по строкам. for ($y=0; $y<6; $y++) { // Будущая строка. Вначале пуста. $row = array(); $notEmpty = false; // Цикл внутри строки по дням недели. for ($x=0; $x<7; $x++, $n++) { // Текущее число >0 и < длины месяца? if (checkdate($month, $n, $year)) { // Да. Заполняем клетку. $row[] = $n; $notEmpty = true; } else { // Нет. Клетка пуста. $row[] = ""; } } // Если в данной строке нет ни одного непустого элемента, // значит, месяц кончился. if (!$notEmpty) break; // Добавляем строку в массив. $cal[] = $row; } return $cal; } // Формируем календарь на текущий месяц. $now = getdate(); $cal = makeCal($now['year'], $now['mon']-1); ?> <!-- Шаблон вывода календаря. --> <table border=1> <tr> <td>Пн</td> <td>Вт</td> <td>Ср</td> <td>Чт</td> <td>Пт</td> <td>Сб</td> <td style="color:red">Вс</td> </tr> <!-- цикл по строкам --> <?foreach ($cal as $row) {?> <tr> <!-- цикл по столбам --> <?foreach ($row as $i=>$v) {?> <!-- воскресенье - "красный" день --> <td style="<?=$i==6? 'color:red' : ''?>"> <?=$v? $v : " "?> </td> <?}?> </tr> <?}?> </table>
-
В книге там прохожу немного даты и такой окд, вроде все верно написал, но он ругается на второй орич в конце кода непонятно почему. <?php //echo '<pre>'.print_r(getdate(),1).'</pre>'; function Calendar($year,$month){ $wday = JDDayofWeek(GregorianToJD($month,1,$year),0); if($wday == 0) $wday = 7; $n = - ($wday - 2); $cal = array(); for($j = 0; $j < 6; $j++){ $row = array(); $notEmpty = false; for($x = 0; $x < 7; $x++,$n++){ if(checkdate($month,$n,$year)){ $row[] = $n; $notEmpty = true; } else{ $row = ''; } } if(!$notEmpty) break; $cal[] = $row; } return $cal; } //Формируем календарь на текущий месяц $now = getdate(); $cal = Calendar($now['year'],$now['mon']-1); ?> <!-- Шаблон вывода календаря --> <table border="1"> <tr> <td>Пн</td> <td>Вт</td> <td>Ср</td> <td>Чт</td> <td>Пт</td> <td>Сб</td> <td style="color:red">Вс</td> </tr> <? foreach ($cal as $row) {?> <tr> <? foreach ($row as $i=>$v){?> <td style="<?=$i==6?'color:red':''?>"> <?=$v? $v : ' '?> </td> <? } ?> </tr> <? } ?> </table> Warning: Invalid argument supplied for foreach() in C:\www\htdocs\test.ru\www\index.php on line 39
-
Вот так вроде сработало <?php $items = glob('*'); for ($i = 0; $i < count($items); $i++) { if (is_dir($items[$i])) { $add = glob($items[$i] . '/*'); $items = array_merge($items, $add); } } foreach($items as $rez) echo $rez.'<br />'; ?>
- 1 reply
-
- 1
-
-
Решил попробовать возвратить все файлы и файлы во внутренних каталогах, что-то не сработало, возвратило только фапы, а файлы во внутренних каталогах не возвратило. <?php foreach(glob("*") as $r){ if(is_dir($r)) {foreach($r as $r2) echo implode(' ',glob("*")); } else echo '<b>'.$r.'</b>'; } ?>
-
Защитил файл чтоб его нельзя было изменить, но он все равно изменился, почему? Защита вроде была но Сан Саныч дописалось в файл. <?php $fp = fopen('1.txt', 'a'); flock($fp,LOCK_SH); $written = fputs($fp, 'Семен Семеныч'); var_dump($written); // fclose($fp); ?>
-
Как создать каталог, а затем внутри него файл 1.php? Как создать каталог понял, а вот функции для создания файла не 1.tmp, а 1.php не нашел. if(!is_dir('2')) mkdir('2'); echo 'Как создать файл 1.php внутри каталога 2?';
-
Как прочитать крилицу из файла doc? Выводит катабру, как прочитать чтоб вывело русский текст в нормальном виде? У меня файл 1.doc В нем внутри такой текст: Салют! Как дела малыш? $ourfile = fopen("1.doc","rt"); if($ourfile){ while(!feof($ourfile)){ $rez = fgets($ourfile,4096); echo $rez; }; fclose($ourfile); } Результат: РПаЎ± Как прочитать и вывести русский текст с файла док?