PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (2): [1] 2 »

> Найдено сообщений: 17
deniss1995 Отправлено: 18 Февраля, 2011 - 19:29:36 • Тема: Формирование ссылок • Форум: Программирование на PHP

Ответов: 5
Просмотров: 880
А как это сделать, а то я пытался и меня всё равно просто на index.php кидает
(Добавление)
Так никто и не поможет?
deniss1995 Отправлено: 18 Февраля, 2011 - 19:24:51 • Тема: Формирование ссылок • Форум: Программирование на PHP

Ответов: 5
Просмотров: 880
Здравствуйте все! Улыбка Как сформировать ссылку типа http://localhost/index.php?page=xxx?
Допустим у меня есть таблица 'pages' в MySQL с колонками id и name_page.... Как всё это реализовать?
deniss1995 Отправлено: 12 Февраля, 2011 - 16:53:33 • Тема: Кодировка LAMP-сервера • Форум: Apache и другие веб-серверы

Ответов: 2
Просмотров: 351
Здравствуйте! Поставил LAMP-сервер под Ubuntu. Столкнулся с такой проблемой: MySQL не хочет отображать русские символы в php коде страницы.
При работе с консолью была такая же проблема, вместо русских символов выдавал знаки вопросов. Всё решилось редактированием файла /etc/mysql/my.inf (Добавил следующие строчки:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. [client]
  3. default-character-set = utf8
  4.  
  5. [mysqld]
  6. default-character-set = utf8
  7. character-set-server = utf8
  8. collation-server = utf8_general_ci
  9. init-connect = "SET NAMES utf8"
  10. skip-character-set-client-handshake
  11.  
  12. [mysqldump]
  13. default-character-set = utf8


При работе с консоль никаких проблем нет:
при выполнении
CODE (SQL):
скопировать код в буфер обмена
  1. USE stihi;
  2. SELECT * FROM stihi;

выдаёт:
[code=htmlphp
]+----+---------------+
| id | text |
+----+---------------+
| 1 | Привет! |
+----+---------------+
[/code]
Но при выполнении этого же запроса в php коде выводится вот это:
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. (
  3.     [0] => Array
  4.         (
  5.             [id] => 1
  6.             [text] => ??????!
  7.         )
  8.  
  9. )
  10.  

код страницы:
PHP:
скопировать код в буфер обмена
  1. <head>
  2.  
  3. <meta http-equiv="Content-Type" content="text/html; charset=utf8">
  4.  
  5. <title>Привет</title>
  6.  
  7. </head>
  8. <?PHP
  9.  
  10.     $connect = mysql_connect('localhost','root','ifwrbq');
  11.  
  12.     $db_select = mysql_select_db('stihi');
  13.  
  14.    
  15.  
  16.     $query = "select * from stihi" ;
  17.  
  18.     $result = mysql_query($query);
  19.  
  20.    
  21.  
  22.     $num = mysql_num_rows($result);
  23.  
  24.    
  25.  
  26.     echo $num;
  27.  
  28.     for ($i = 0; $i < $num ; $i++){
  29.  
  30.     $res[] = mysql_fetch_array($result,MYSQL_ASSOC); //возвращаем ряд
  31.  
  32.     }
  33.  
  34.      echo "<pre>";
  35.  
  36.     print_r ($res);
  37.  
  38.     echo "</pre>";
  39.  
  40.    
  41.  
  42.     $res;
  43.  
  44.    
  45.  
  46.    
  47.  
  48. ?>

Как решить проблему с вопросительными знаками? Заранее спасибо!
deniss1995 Отправлено: 23 Января, 2011 - 15:27:12 • Тема: Авторизация на PHP-MySQL • Форум: Программирование на PHP

Ответов: 3
Просмотров: 529
Мелкий, с первой ошибкой разобрался Улыбка . Спасибо огромное.... но теперь не могу понять что не так. После ввода логина и пароля идёт переадресация на check.php и на странице написано "Хм, что-то не получилось" Можно узнать что именно? Улыбка
deniss1995 Отправлено: 23 Января, 2011 - 14:19:39 • Тема: Авторизация на PHP-MySQL • Форум: Программирование на PHP

Ответов: 3
Просмотров: 529
Возникла проблема с авторизацией на странице.
Выдаёт ошибку: " Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in G:\Program Files (x86)\VertrigoServ\www\adm\login.php on line 25
Вы ввели неправильный логин/пароль "

Код login.php:
PHP:
скопировать код в буфер обмена
  1. <?
  2. // Страница авторизации
  3.  
  4.  
  5. # Функция для генерации случайной строки
  6. function generateCode($length=6) {
  7.     $chars = "abcdefghijklmnopqrstuvwxyzABCDEFGHI JKLMNOPRQSTUVWXYZ0123456789";
  8.     $code = "";
  9.     $clen = strlen($chars) - 1;  
  10.     while (strlen($code) < $length) {
  11.             $code .= $chars[mt_rand(0,$clen)];  
  12.     }
  13.     return $code;
  14. }
  15.  
  16.  
  17. # Соединямся с БД
  18. mysql_connect("localhost", "root", "daidai");
  19. mysql_select_db("testtable");
  20.  
  21. if(isset($_POST['submit']))
  22. {
  23.     # Вытаскиваем из БД запись, у которой логин равняеться введенному
  24.    $query = mysql_query("SELECT user_id, user_password FROM users WHERE user_login='".mysql_real_escape_string($_POST['login'])."' LIMIT 1");
  25.     $data = mysql_fetch_assoc($query);
  26.    
  27.     # Соавниваем пароли
  28.    if($data['user_password'] === md5(md5($_POST['password'])))
  29.     {
  30.         # Генерируем случайное число и шифруем его
  31.        $hash = md5(generateCode(10));
  32.            
  33.         if(!@$_POST['not_attach_ip'])
  34.         {
  35.             # Если пользователя выбрал привязку к IP
  36.            # Переводим IP в строку
  37.            $insip = ", user_ip=INET_ATON('".$_SERVER['REMOTE_ADDR']."')";
  38.         }
  39.        
  40.         # Записываем в БД новый хеш авторизации и IP
  41.        mysql_query("UPDATE users SET user_hash='".$hash."' ".$insip." WHERE user_id='".$data['user_id']."'");
  42.        
  43.         # Ставим куки
  44.        setcookie("id", $data['user_id'], time()+60*60*24*30);
  45.         setcookie("hash", $hash, time()+60*60*24*30);
  46.        
  47.         # Переадресовываем браузер на страницу проверки нашего скрипта
  48.        header("Location: check.php"); exit();
  49.     }
  50.     else
  51.     {
  52.         print "Вы ввели неправильный логин/пароль";
  53.     }
  54. }
  55. ?>
  56. <html>
  57. <head>
  58.         <title>Вход</title>
  59.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  60.  
  61. </head>
  62.  
  63.  
  64. <body>
  65. <form method="POST">
  66. Логин <input name="login" type="text"><br>
  67. Пароль <input name="password" type="password"><br>
  68. Не прикреплять к IP(не безопасно) <input type="checkbox" name="not_attach_ip"><br>
  69. <input name="submit" type="submit" value="Войти">
  70. </form>
  71. </body>
  72. </html>
  73.  


Таблица создавалась вот таким SQL запросом:
CODE (SQL):
скопировать код в буфер обмена
  1. CREATE TABLE `users` (
  2. `user_id` int(11) UNSIGNED NOT NULL AUTO_INCREMENT,
  3. `user_login` varchar(30) NOT NULL,
  4. `user_password` varchar(32) NOT NULL,
  5. `user_hash` varchar(32) NOT NULL,
  6. `user_ip` int(10) UNSIGNED NOT NULL DEFAULT '0',
  7. PRIMARY KEY (`user_id`)
  8. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=1 ;
  9.  


В самом коде найти ошибку так и не могу. Помогите, пожалуйста... Заранее спасибо!

Забыл код check.php:
PHP:
скопировать код в буфер обмена
  1. <html>
  2. <head>
  3.         <title>Registration</title>
  4.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5.  
  6. </head>
  7.  
  8.  
  9. <body>
  10. <?
  11. // Скрипт проверки
  12.  
  13. # Соединямся с БД
  14. mysql_connect("localhost", "root", "daidai");
  15. mysql_select_db("testtable");
  16.  
  17. if (isset($_COOKIE['id']) and isset($_COOKIE['hash']))
  18. {  
  19.     $query = mysql_query("SELECT *,INET_NTOA(user_ip) FROM users WHERE user_id = '".intval($_COOKIE['id'])."' LIMIT 1");
  20.     $userdata = mysql_fetch_assoc($query);
  21.  
  22.     if(($userdata['user_hash'] !== $_COOKIE['hash']) or ($userdata['user_id'] !== $_COOKIE['id'])
  23.  or (($userdata['user_ip'] !== $_SERVER['REMOTE_ADDR'])  and ($userdata['user_ip'] !== "0")))
  24.     {
  25.         setcookie("id", "", time() - 3600*24*30*12, "/");
  26.         setcookie("hash", "", time() - 3600*24*30*12, "/");
  27.         print "Хм, что-то не получилось";
  28.     }
  29.     else
  30.     {
  31.         print "Привет, ".$userdata['user_login'].". Всё работает!";
  32.     }
  33. }
  34. else
  35. {
  36.     print "Включите куки";
  37. }
  38. ?>
  39. </body>
  40. </html>
deniss1995 Отправлено: 22 Января, 2011 - 17:13:13 • Тема: Построчный вывод из поля textarea • Форум: Программирование на PHP

Ответов: 6
Просмотров: 833
grefon, спасибо большое... Я так понимаю что запись в txt-файл с исходным форматированием из textarea происходит через str_replace?

Если не сложно можно напишите, пожалуйста скрипт записи в файл из поля str_replace в файл с исходным форматированием Улыбка
deniss1995 Отправлено: 22 Января, 2011 - 17:04:40 • Тема: Построчный вывод из поля textarea • Форум: Программирование на PHP

Ответов: 6
Просмотров: 833
Написал форму ввода textarea..... Проблема заключается в том, что вместо вписанного текста :

выводит

Как сохранить исходное форматирование текста в данном поле?

Код самой формы:
CODE (html):
скопировать код в буфер обмена
  1. <HTML>
  2. <head>
  3.         <title>!!!</title>
  4.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. </head>
  6. <body>
  7. <form action= "tx.php" name="header&footer" method="post">
  8. <textarea name="txtArea" cols="60" rows="25" ></textarea>
  9. <input name="Submit" type=submit value="Отправить данные">
  10. </form>
  11. </body>
  12. </HTML>


Код обработчика tx.php:
PHP:
скопировать код в буфер обмена
  1. <HTML>
  2. <head>
  3.         <title>!!!</title>
  4.         <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. </head>
  6. <body>
  7. <? $tx =  ($_POST['txtArea']);
  8. echo $tx;
  9. ?>
  10. </body>
  11. </html>
  12.  
  13.  


Заранее спасибо! Улыбка
deniss1995 Отправлено: 08 Января, 2011 - 15:43:57 • Тема: Фоновая рамка для сайта • Форум: HTML, Дизайн & CSS

Ответов: 1
Просмотров: 1428
Доброго времени суток! У меня вопрос, как сделать фоновую рамку для сайта? Знаю что можно сохранить рисунок рамки с прозрачностью в png и вставить как фон, но как сделать так чтобы она повторяла контуры браузера?

Объяснил как Если что, могу объяснить подробнее
deniss1995 Отправлено: 29 Августа, 2010 - 10:42:03 • Тема: Чтение из файла + скрипт склонения в Дательный падеж • Форум: Напишите за меня, пожалуйста

Ответов: 3
Просмотров: 75
SAD, если честно не понял вопрос... Ну в файле name.txt имя, фамилия, отчество в одну строку
deniss1995 Отправлено: 29 Августа, 2010 - 07:50:26 • Тема: Чтение из файла + скрипт склонения в Дательный падеж • Форум: Напишите за меня, пожалуйста

Ответов: 3
Просмотров: 75
Здравствуйте ещё раз! Радость Всё также работаю над своим php-проектом.

И опять столкнулся с проблемой.

Имеется php-скрипт, который склоняет фамилию, имя и отчество в дательный падеж:

PHP:
скопировать код в буфер обмена
  1.     <?PHP
  2.       #########################################################
  3.      # Функция склоняет фамилию, имя и отчество в
  4.      # дательный падеж
  5.      # Поддержка http://www.*****.ru/forum/
  6.      #
  7.      #   Вводимые параметры:
  8.      #   $FirstName      - фамилия
  9.      #   $SecondName     - имя
  10.      #   $Patronymic     - отчество
  11.      #########################################################
  12.  
  13.       function DativeCase($FirstName, $SecondName, $Patronymic)
  14.       {
  15.         $FirstName = trim($FirstName);
  16.         $SecondName = trim($SecondName);
  17.         $Patronymic = trim($Patronymic);
  18.        
  19.         if (!empty($FirstName) && !empty($SecondName) && !empty($Patronymic))
  20.         {
  21.           # Получаем пол человека:
  22.          if (substr($Patronymic, -1) == 'ч')
  23.           {
  24.             # Склонение фамилии мужчины:
  25.            switch (substr($FirstName, -2))
  26.             {
  27.               case 'ха':
  28.                   $FirstName = substr($FirstName, 0, -2).'хи';
  29.                   break;
  30.                  
  31.               default:
  32.                   switch (substr($FirstName, -1))
  33.                   {
  34.                       case 'е': case 'о': case 'и': case 'я': case 'а':
  35.                           break;
  36.                          
  37.                       case 'й':
  38.                           $FirstName = substr($FirstName, 0, -2).'ому';
  39.                           break;
  40.                          
  41.                       case 'ь':
  42.                           $FirstName = substr($FirstName, 0, -1).'ю';
  43.                           break;
  44.                          
  45.                       default:
  46.                           $FirstName = $FirstName.'у';
  47.                           break;
  48.                   }
  49.                   break;
  50.             }
  51.  
  52.             # Склонение мужского имени:
  53.            switch (substr($SecondName, -1))
  54.             {
  55.                case 'л':
  56.                    $SecondName = substr($SecondName, 0, -2).'лу';
  57.                    break;
  58.                    
  59.                case 'а': case 'я':
  60.                    If (substr($SecondName, -2, 1) == 'и')
  61.                    {
  62.                        $SecondName = substr($SecondName, 0, -1).'и';
  63.                    }
  64.                    else
  65.                    {
  66.                        $SecondName = substr($SecondName, 0, -1).'е';
  67.                    }
  68.                    break;
  69.                            
  70.                case 'й': case 'ь':
  71.                    $SecondName = substr($SecondName, 0, -1).'ю';
  72.                    break;
  73.                            
  74.                default:
  75.                    $SecondName = $SecondName.'у';
  76.                    break;
  77.             }
  78.            
  79.             # Склонение отчества
  80.            $Patronymic = $Patronymic.'у';
  81.            
  82.         }
  83.         else
  84.         {
  85.             # Склоенение женской фамилии
  86.            switch (substr($FirstName, -1))
  87.             {
  88.                 case 'о': case 'и': case 'б': case 'в': case 'г':
  89.                 case 'д': case 'ж': case 'з': case 'к': case 'л':
  90.                 case 'м': case 'н': case 'п': case 'р': case 'с':
  91.                 case 'т': case 'ф': case 'х': case 'ц': case 'ч':
  92.                 case 'ш': case 'щ': case 'ь':
  93.                     break;
  94.                    
  95.                 case 'я':
  96.                     $FirstName = substr($FirstName, 0, -2).'ой';
  97.                    
  98.                 default:
  99.                     $FirstName = substr($FirstName, 0, -1).'ой';
  100.                     break;
  101.             }
  102.            
  103.             # Склонение женского имени:
  104.            switch (substr($SecondName, -1))
  105.             {
  106.                case 'а': case 'я':
  107.                    If (substr($SecondName, -2, 1) == 'и')
  108.                    {
  109.                        $SecondName = substr($SecondName, 0, -1).'и';
  110.                    }
  111.                    else
  112.                    {
  113.                        $SecondName = substr($SecondName, 0, -1).'е';
  114.                    }
  115.                    break;
  116.                            
  117.                case 'ь':
  118.                    $SecondName = substr($SecondName, 0, -1).'и';
  119.                    break;
  120.             }
  121.            
  122.             # Склонение женского отчества
  123.            $Patronymic = substr($Patronymic, 0, -1).'е';
  124.  
  125.           }
  126.      
  127.           return "$FirstName $SecondName $Patronymic";
  128.         }
  129.       }
  130.      
  131.       # Проверка работоспособности
  132.      echo DativeCase ('Иванов','Иван','Иванович');
  133.  
  134.     ?>


Также имеется 2 файла: name.txt и name.php.

Код name.php:

PHP:
скопировать код в буфер обмена
  1. <? $f = file("name.txt");
  2.    
  3.       if (!$f) {
  4.    
  5.        echo("Ошибка открытия файла");
  6.    
  7.       } else {
  8.    
  9.           for ($i = 0; $i < sizeof($f); $i++) {
  10.    
  11.               printf($f[$i]);
  12.  
  13.           }
  14.  
  15.       }
  16.           ?>

Вот теперь вопрос: Как сделать так, чтобы происходило чтение из файла name.txt, склонение php-скриптом и вывод полученной информации в браузер...
deniss1995 Отправлено: 28 Августа, 2010 - 18:08:24 • Тема: Рандомизация фонов на странице • Форум: Напишите за меня, пожалуйста

Ответов: 2
Просмотров: 43
movEAX, спасибо... Но после долгих размышлений пришел к правильному (может быть длинному) решению.

Код самого PHP-скрипта:

PHP:
скопировать код в буфер обмена
  1. <?
  2. $dirname = "background"; // Текущая директория
  3. scan_bg($dirname);  // Вызов рекурсивной функции
  4. ?>
  5.  
  6. <?PHP
  7. function scan_bg($dirname)  
  8.   {  
  9.     // Объявляем переменные замены глобальными  
  10.     GLOBAL $count_bg;  
  11.     // Открываем текущую директорию  
  12.     $dir = opendir($dirname);  
  13.     // Читаем в цикле директорию  
  14.     while (($file = readdir($dir)) !== false)  
  15.     {  
  16.       // Если файл обрабатываем его содержимое  
  17.       if($file != "." && $file != "..")  
  18.       {  
  19.         // Если имеем дело с файлом - производим в нём замену  
  20.         if(is_file($dirname."/".$file))  
  21.         {  
  22.          $count_bg++;  
  23.         }  
  24.       }  
  25.     }  
  26.     // Закрываем директорию  
  27.     closedir($dir);  
  28.   }
  29. ?>
  30.  
  31. <?
  32. $a = rand(1, $count_bg);
  33.         echo '<body background="background/',"$a",'.jpg">'
  34. ?>


А в самом index.php пишем вмсто тега пишем
PHP:
скопировать код в буфер обмена
  1. <? include ('background.php');?>


movEAX, ну а ваш способ я обязательно возьму на заметку=)
deniss1995 Отправлено: 28 Августа, 2010 - 16:02:41 • Тема: Рандомизация фонов на странице • Форум: Напишите за меня, пожалуйста

Ответов: 2
Просмотров: 43
Столкнулся с проблемой....Написал php-скрипт рандомизации картинок из папки.

Вот он:

PHP:
скопировать код в буфер обмена
  1. <?
  2. $dirname = "background"; // Текущая директория
  3. scan_bg($dirname);  // Вызов рекурсивной функции
  4. ?>
  5.  
  6. <?PHP
  7. function scan_bg($dirname)  
  8.   {  
  9.     // Объявляем переменные замены глобальными  
  10.     GLOBAL $count_bg;  
  11.     // Открываем текущую директорию  
  12.     $dir = opendir($dirname);  
  13.     // Читаем в цикле директорию  
  14.     while (($file = readdir($dir)) !== false)  
  15.     {  
  16.       // Если файл обрабатываем его содержимое  
  17.       if($file != "." && $file != "..")  
  18.       {  
  19.         // Если имеем дело с файлом - производим в нём замену  
  20.         if(is_file($dirname."/".$file))  
  21.         {  
  22.          $count_bg++;  
  23.         }  
  24.       }  
  25.     }  
  26.     // Закрываем директорию  
  27.     closedir($dir);  
  28.   }
  29. ?>
  30.  
  31. <?
  32. $a = rand(1, $count_bg);
  33.         echo '<img src="background/',"$a",'.jpg"'
  34. ?>
  35.  


Сам по себе он работает, но как интегрировать его в начальную страницу index.php?

Вот такая конструкция ничего не даёт:
PHP:
скопировать код в буфер обмена
  1. <BODY background=<? include('background.php');?>>


Помогите, пожалуйста, разобраться
deniss1995 Отправлено: 26 Августа, 2010 - 13:50:21 • Тема: Локальный php-сервер • Форум: Программное обеспечение

Ответов: 5
Просмотров: 3202
Viper пишет:
xampp портабельный. сам пользуюсь.


Можешь ссыль кинуть на порт. версию...сам скачивал ну с PHP-скриптами проблема
deniss1995 Отправлено: 26 Августа, 2010 - 13:26:26 • Тема: Локальный php-сервер • Форум: Программное обеспечение

Ответов: 5
Просмотров: 3202
Подскажите, пожалуйста, портативный php-сервер, который запускается с флешки...Перепробовал множество вариантов...но почему-то не в одном не запустились php-скрипты...
deniss1995 Отправлено: 26 Августа, 2010 - 11:28:18 • Тема: Рандомизация переменных • Форум: Напишите за меня, пожалуйста

Ответов: 4
Просмотров: 46
SAD, огромое спасибо! Всё заработало!!

Страниц (2): [1] 2 »
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB