Помогите с маленьким скриптом

Печать RSS
400

G
Автор
Пришелец
0
Конь в пальто (22 Ноября 2011 / 17:47)
c таблицей немного тяжелей)
но случий тот же) могу канеш пример привести...

Если ты о таблице, например вот моя
-- Структура таблицы `userlist`

CREATE TABLE IF NOT EXISTS `userlist` (
  `id` int(255) NOT NULL AUTO_INCREMENT,
  `user` varchar(255) NOT NULL,
  `pass` varchar(255) NOT NULL,
  `email` varchar(2555) NOT NULL,
  `icq` varchar(2555) NOT NULL,
  `name` varchar(2555) NOT NULL,
  `pol` varchar(255) NOT NULL,
  `gor` varchar(255) NOT NULL,
  `phone` varchar(255) NOT NULL,
  `os` varchar(2555) NOT NULL,
  `photo` varchar(255) DEFAULT NULL,
  `datereg` date DEFAULT NULL,
  `view` int(11) NOT NULL,
  PRIMARY KEY (`id`)
) ENGINE=MyISAM  DEFAULT CHARSET=utf8 AUTO_INCREMENT=3 ;

--
-- Дамп данных таблицы `userlist`
--

INSERT INTO `userlist` (`id`, `user`, `pass`, `email`, `icq`, `name`, `pol`, `gor`, `phone`, `os`, `photo`, `datereg`, `view`) VALUES
(1, 'admin', '123456', 'y-menya@maila.net', '123456789', 'bobo', 'Мужской', 'grzny', '89899117386', 'wndws', 'gif', '2011-10-01', 5985491),
(2, 'vhncfvn', 'cxvhnxvfh', '', '', 'xcvhnxvbn', 'Мужской', '', '', '', '0', '2011-10-27', 1);


то это мне понятно, и выводить из таблицы могу, только как редактировать ее содержимое нема smile

Оранжевые штаны
0
51. BOBO-95, именно редактировать или добавлять?
Изменил: Николай (22.11.2011 / 17:57)
G
Автор
Пришелец
0
52. Конь в пальто,

этот код как инсталятор? ну сам таблицу создает smile
Запишука klass

Оранжевые штаны
0
BOBO-95 (22 Ноября 2011 / 17:58)
52. Конь в пальто,

этот код как инсталятор? ну сам таблицу создает smile
Запишука klass
ды я думал у тебя таблицы еще нету)
G
Автор
Пришелец
0
52. Конь в пальто,

И то и другое. Добавить могу только SQL запросом.

А где твой пример? не успел записать)))

Добавлено через 01:41 сек.
Хочу показать тебе скрипт, с которым я давно вожусь. написал по примерам с инета.

Оранжевые штаны
0
--------------------Работа c Mysql----------------------
install.php (заливает таблицу в БД)
<?
//данные о хосте, пользователе и базе данных
$host = 'localhost';
$user = ''; 
$pass = ''; 
$dbname = '';

// подключаемся и выбираем бд, которую указали выше
if(!mysql_connect($host,$user,$pass))
  die('Не удалось подключиться к серверу MySql!');
elseif(!mysql_select_db($dbname))
  die('Не удалось выбрать БД!');
////// 

// sql-скрипт для создания таблицы
$sql='CREATE TABLE usersinfo(
  id INT NOT NULL AUTO_INCREMENT,
  name TEXT,
  mobil TEXT,
  comm TEXT,
  you TEXT,
  search TEXT,
  PRIMARY KEY(id)
);';

//выполняем sql-запрос
if(!mysql_query($sql)){
  echo 'Ошибка при создании таблицы в БД!';
} else {
  echo 'Всё прошло отлично, таблица создана!Удалите install.php!!!!';
}
?>
Изменил: Николай (22.11.2011 / 18:03)
G
Автор
Пришелец
0
фвторизация

auth.php
<?php
##Определяем константы
 define('USERS_TABLE','users');
 define('SID',session_id());
  
 ##Определяем функции
 //Функция выхода.
 //Пользователь считается авторизированым, если в сессии присутствует uid
 //см. "Действия - если пользователь авторизирован".
 function logout() {
     unset($_SESSION['uid']); //Удаляем из сессии ID пользователя
     die(header('Location: '.$_SERVER['PHP_SELF']));
 }
  
 //Функция входа.
 //Все выбраные поля записываются в сессию.
 //Таким образом, при каждом просмотре страницы не надо выбирать их заново.
 //Для обновления информации из БД можно пользоваться этой же функцией - имя и пароль
 //хранятся в сессиях
 function login($username,$password)    {
     $result = mysql_query("SELECT * FROM `".USERS_TABLE."` WHERE `username`='$username' AND `password`='$password';")
         or die(mysql_error());
     $USER = mysql_fetch_array($result,1); //Генерирует удобный массив из результата запроса
     if(!empty($USER)) { //Если массив не пустой (это значит, что пара имя/пароль верная)
         $_SESSION = array_merge($_SESSION,$USER); //Добавляем массив с пользователем к массиву сессии
         
         mysql_query("UPDATE `".USERS_TABLE."` SET `sid`='".SID."' WHERE `uid`='".$USER['uid']."';")
             or die(mysql_error());
         return true;
     }
     else {
         return false;
     }
 }
  
 
G
Автор
Пришелец
0
<?php
//Функция проверки залогинности пользователя.
 //При входе, ID сессии записывается в БД.
 //Если ID текущей сессии и SID из БД не совпадают, производится logout.
 //Благородя этому нельзя одновременно работать под одним ником с разных браузеров.
 function check_user($uid) {
     $result = mysql_query("SELECT `sid` FROM `".USERS_TABLE."` WHERE `uid`='$uid';") or die(mysql_error());
     $sid = mysql_result($result,0);
     return $sid==SID ? true : false;
 }
  
 ##Действия - если пользователь авторизирован
 if(isset($_SESSION['uid'])) { //Если была произведена авторизация, то в сессии есть uid
  
     //Константу удобно проверять в любом месте скрипта
     define('USER_LOGGED',true);
     //Создаём удобные переменные
     //Все поля таблицы пользователей записываются в сесси (см. стр. 35-37)
     //Таким образом, после добавления нового поля в таблицу надо дописть лишь одну строку
     $UserName = $_SESSION['username'];
     $UserPass = $_SESSION['password'];
     $UserID = $_SESSION['uid'];
     $UserInfo = $_SESSION['info'];
     $UserTime = $_SESSION['time_reg'];
     $UserNick = $_SESSION['nick_name'];

 }
 else {
     define('USER_LOGGED',false);
 }
  
 ##Действия при попытке входа
 if (isset($_POST['login'])) {
     
     if(get_magic_quotes_gpc()) { //Если слеши автоматически добавляются
         $_POST['user']=stripslashes($_POST['user']);
         $_POST['pass']=stripslashes($_POST['pass']);
     }
     $user = mysql_real_escape_string($_POST['user']);
     $pass = mysql_real_escape_string($_POST['pass']);
     if(login($user,$pass)) {
         header('Refresh: 0');
         
     }
     else {
         header('Refresh: 2;');
         die('Пароль неправильный!');
     }
     
 }
  
 ##Действия при попытке выхода
 if(isset($_GET['logout'])) {
     logout();
 }
 ?>


Подключается в самом верху, на те файлы, которые нужно закрыть от незареганных.
Щас пример index.php напишу
Изменил: Gorec (22.11.2011 / 18:12)
G
Автор
Пришелец
0
index.php

<?php
 session_start();
 mysql_connect('localhost','admin','123') or die(mysql_error());
 mysql_select_db('admin') or die(mysql_error());
mysql_query('SET NAMES cp1251');
 
include('inc/auth.php');
include("inc/cfg.dat");
include_once"theme/$theme/head.php";

 if(USER_LOGGED) {
     if(!check_user($UserID)) logout();

?>

<!--Content-->

     <h4><a href="?logout">Выход</h4>

<?=$th;?>
<?=$linkimgnews;?>
<br />
Новости
<?=$tf;?>
<br />
<?=$img;?>
<a href="pages/mypage.php">Анкета</a>
<br />
<?=$imgforum;?><?=$forum;?>
<br />
<?=$imgguest;?>
<a href="/gbook">Гостевая</a>
<br />
<?=$imglib;?>
<a href="/lib">Библиотекак</a>
<br />
<?=$img;?>
<a href="/stranicaoshibok">Несуществующая страница</a>
<br />
<?=$img;?>
<a href="/pages">pages</a>


<!--End Content-->



 <?php
 }
 else { ?>
     <form method="POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">
     <table>
     <tr>
     <td>Имя:</td><td><input type="text" name="user"></td>
     </tr>
     <tr>
     <td>Пароль:</td><td><input type="password" name="pass"></td>
     </tr>
     <tr>
     <td colspan="2"><input type="submit" name="login" value="Войти"></td>
     </tr>
     </table>
     </form>
 <?php
 }
 ?>
<?
include_once"theme/$theme/foot.php";
?>


Оранжевые штаны
0
56. Конь в Пальто,
add.php (добавляет новые данные в БД)
<?
//данные о хосте, пользователе и базе данных 
$host = 'localhost'; 
$user = '';  
$pass = '';  
$dbname = ''; 

// подключаемся и выбираем бд, которую указали выше 
if(!mysql_connect($host,$user,$pass)) 
  die('Не удалось подключиться к серверу MySql!'); 
elseif(!mysql_select_db($dbname)) 
  die('Не удалось выбрать БД!'); 
////// 
$mode = htmlspecialchars($_GET['mode']); 
switch ($mode): 
case 'index': 
$kz='<font color="#FF0000">*</font>';
// поля данных 
echo''.$kz.'- Обязательно к заполнению<br />';
echo '<form action="?mode=add" method="post">'; 
echo'
'.$kz.' Имя <br>
<input type="text" size="10" maxlength="15" name="name"><br />
Номер тел. <br>
<input type="text" size="10" name="number" value=""> <br />
'.$kz.' Комментарий: <br> 
<textarea rows="3" cols="40" maxlength="10" name="comments" value=""> 
</textarea> <br> 
'.$kz.' Вы  <br> 
<select name="pol"> 
<option valuе="Myжчинa">Myжчинa </option>
<option value="Жeнщинa">Жeнщинa </option>
</select><br />
'.$kz.' Ищите  <br> 
<select name="kto"> 
<option valuе="Парня">Парня</option>
<option value="Девушку">Девушку</option>
</select><br />'; 
echo '<input type="submit" name="submit" value="Сохранить" /></form>'; 
break; 
часть 2 ниже
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск