|
AdmBuxonly ↓
|
 |
|
24 Октябрь, 2008, 07:20:30
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -1
Сообщений: 369 Сила слова: -0.27
|
Все, код полностью исправил, но столкнулся еще с одной непонятной проблемой: заходя на страницу http://barosha.jino.ru/admin/edit/edit_articles.php обновляю её и выбираю любой понравившийся урок для редактирования, нажимаю на ссылку и открывается форма заполненная, но не так как бы мне этого хотелось выводит что попало и где не недолжно быть этого, к примеру ту же дату.
Страница edit_articles.php
<?php
if(is_numeric($_GET["id"]))
{
$id = $_GET["id"];
}
if(! isset($id))
{
$result = mysql_query("SELECT id,title,meta_d,meta_k,date,description,text,author FROM articles");
$myrow = mysql_fetch_array($result);
do
{
printf("<p><a href='../edit/edit_articles.php?id=%s'>%s</a></p>", $myrow['id'], $myrow['title']);
}
while($myrow = mysql_fetch_array($result));
}
else
{
$result = mysql_query("SELECT id,title,meta_d,meta_k,date,description,text,author FROM articles WHERE id=$id");
$myrow = mysql_fetch_array($result);
print <<<HERE
<form name= "form1" method= "post" action= "../header/header_articles.php">
<p>
<label>Введите название статьи:<br>
<input value= "$myrow[title]" name= "title" type= "text" id= "title" size= "40">
</label>
</p>
<p>
<label>Введите краткое описание статьи:<br>
<input value= "$myrow[meta_d]" name= "meta_d" type= "text" id= "meta_d" size= "40">
</label>
</p>
<p>
<label>Введите ключевые слова:<br>
<input value= "$myrow[meta_k]" name= "meta_k" type= "text" id= "meta_k" size= "40">
</label>
</p>
<p>
<label>Введите дату добавления:<br>
<input value= "$myrow[date]" name= "date" type= "text" id= "date">
</label>
</p>
<p>
<label>Введите краткое описание статьи с тегами (p, br, i, b, table div и т.д. )
<textarea value= "$myrow[description]" name= "description" cols= "50" rows= "10" id= "description"> $myrow[description ]</textarea>
</label>
</p>
<p>
<label>Введите html - код с полным описанием статьи включая тэги, ссылки на изображения и т.д.<br>
<textarea name= "text" cols= "50" rows= "15" id= "text"> $myrow[text ]</textarea>
</label>
</p>
<p>
<label>Автор статьи (Фамилия Имя ):<br>
<input value= "$myrow[author]" name= "author" type= "text" size= "40" id= "author">
</label>
</p>
<input name= "id" type= "hidden" value= "$myrow[id]">
<p>
<label>
<input type= "submit" name= "submit" value= "Сохранить статью" id= "submit">
</label></p>
</form>
HERE;
}
?>
Так, как сайт в разработке, то вы можете сами убедится в работоспособности админки: добавте любую статью вписав в форму все данные как надо. Зайдите на страницу edit_articles.php и обновите её. Появится только что добавленная статья. Нажмите на неё и увидите, что происходит... что куда подставляется....
|
|
|
|
|
Записан
|
|
|
|
|
AdmBuxonly ↓
|
 |
|
24 Октябрь, 2008, 07:31:16 , спустя 10 минут 46 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -1
Сообщений: 369 Сила слова: -0.27
|
Кстати, добавляется тоже некоректно, код вроде правильный: http://barosha.jino.ru/articles.php (обновите)
Код обработчика формы страницы http://barosha.jino.ru/admin/news/new_articles.php
<?php include('../../config.php');
// проверяем переменные на существование
if(isset($_POST['title']))
{$title = $_POST['title'];
if ($title == '')
{
unset($title);
}
}
if(isset($_POST['meta_d'])) {$meta_d = $_POST['meta_d']; if ($title == '') {unset($meta_d); } }
if(isset($_POST['meta_k'])) {$meta_k = $_POST['meta_k']; if ($title == '') {unset($meta_k); } }
if(isset($_POST['date'])) {$date = $_POST['date']; if ($title == '') {unset($date); } }
if(isset($_POST['description'])) {$description = $_POST['description']; if ($title == '') {unset($description); } }
if(isset($_POST['text'])) {$text = $_POST['text']; if ($title == '') {unset($text); } }
if(isset($_POST['author'])) {$author = $_POST['author']; if ($title == '') {unset($author); } }
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv= "Content-Type" content= "text/html; charset=windows-1251">
<title>Административная часть - добавление статьи: обработчик</title>
<link href= "../../style.css" rel= "stylesheet" type= "text/css">
<style type= "text/css">
<!--
.style1 {color: #FFFFFF}
-->
</style>
<link href= "../style.css" rel= "stylesheet" type= "text/css">
</head>
<body>
<table width= "750" border= "0" align= "center" cellpadding= "0" cellspacing= "0" bordercolor= "#FFFFFF" bgcolor= "#CCCCCC">
<tr>
<td scope= "col" align= "center">Админ-панель - добавление статьи</td>
</tr>
<tr>
<td>
<table width= "100%" border= "0">
<?php include('../include/left_table.php'); ?>
<td align= "left" valign= "top" class= "main_border">
<?php
if (isset($title) && isset($meta_d) && isset($meta_k) && isset($description) && isset($date) && isset($text) && isset($author))
{
// вывод
$result = mysql_query("INSERT INTO articles (title,meta_d,meta_k,date,description,text,author) VALUES ('$title','$meta_d','meta_k','$description','$date','$text','$author')");
if($result = true){echo "<p>Урок успешно добавлен!</p>"; }
else {echo "Урок не добавлен!"; }
}
else
{
echo "<p>Вы ввели не всю информацию в базу. Урок не может быть добавлен!</p>";
}
?>
|
|
|
|
|
Записан
|
|
|
|
|
AdmBuxonly ↓
|
 |
|
24 Октябрь, 2008, 07:35:40 , спустя 4 минуты 24 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -1
Сообщений: 369 Сила слова: -0.27
|
Может в БД поле date установить текстовое или варчар? Что-то с добавлением даты не то...
|
|
|
|
|
Записан
|
|
|
|
|
md5 ↓
|
 |
|
24 Октябрь, 2008, 07:37:22 , спустя 1 минуту 42 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
выезд, апартаменты, массаж, стриптиз, подружки, дорого
Группа: в ухо Карма: не нужна
Сообщений: 10494 Сила слова: 1.19
|
для дат есть свои типы полей и функции для работы с ними
http://www.mysql.ru/docs/man/Date_and_time_functions.html
|
|
|
|
|
Записан
|
8: Undefined variable: str Файл: /home/pyha/pyha.ru/forum/bbcode/Xbb/Tags/Man.php Строка: 18 adw0rd: мудень блять, я уже фиксить стал эту фигню :) md5: вуахахахаха
|
|
|
|
AdmBuxonly ↓
|
 |
|
24 Октябрь, 2008, 07:39:18 , спустя 1 минуту 56 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -1
Сообщений: 369 Сила слова: -0.27
|
--
-- Структура таблицы `articles`
--
CREATE TABLE `articles` (
`id` int (5) NOT NULL auto_increment,
`title` varchar (255) NOT NULL,
`meta_d` varchar (255) NOT NULL,
`meta_k` varchar (255) NOT NULL,
` date` date NOT NULL,
`description` text NOT NULL,
`text` text NOT NULL,
`form` text NOT NULL,
`author` varchar (255) NOT NULL,
PRIMARY KEY (`id` )
) ENGINE=MyISAM DEFAULT CHARSET=cp1251 AUTO_INCREMENT= 17 ;
|
|
|
|
|
Записан
|
|
|
|
|
dallone ↓
|
 |
|
24 Октябрь, 2008, 09:46:44 , спустя 2 часа 7 минут 26 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
|
Группа: Адекваты
Карма: 4
Сообщений: 45 Сила слова: 8.89
|
dallone, Алекс звездочка не тормознее))) изза нее потом могу быть траблы если добавяться новые поля а в результатах они не будут нужны
1. MySQL перед запросом тогда определяет какие поля имеютсо у таблицы. (да согласен копеечные затраты, но все же :)
2. Ну так если "добавятся новые поля, а в результатах они не будут нужны" => будет выбираться куча всягоко хлама => тормознее (:
|
|
|
|
|
Записан
|
|
|
|
|
Sephiroth_Lukaw ↓
|
 |
|
25 Октябрь, 2008, 12:40:17 , спустя 2 часа 53 минуты 33 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: 0
Сообщений: 10 Сила слова: 0
|
|
|
|
|
« Последнее редактирование: 25 Октябрь, 2008, 12:45:53 от Sephiroth_Lukaw »
|
Записан
|
|
|
|
|
AdmBuxonly ↓
|
 |
|
25 Октябрь, 2008, 02:02:18 , спустя 13 часов 22 минуты 1 секунду
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -1
Сообщений: 369 Сила слова: -0.27
|
Ура заработало!!! Я нашел ошибку:
НЕПРАВИЛЬНО!
if (isset($title) && isset($meta_d) && isset($meta_k) && isset($description) && isset($date) && isset($text) && isset($author))
{
// вывод
$result = mysql_query("INSERT INTO articles (title,meta_d,meta_k,date,description,text,author) VALUES ('$title','$meta_d','meta_k','$description','$date','$text','$author')");
ПРАВИЛЬНО!
if (isset($title) && isset($meta_d) && isset($meta_k) && isset($description) && isset($date) && isset($text) && isset($author))
{
// вывод
$result = mysql_query("INSERT INTO articles (title,meta_d,meta_k,date,description,text,author) VALUES ('$title','$meta_d','$meta_k','$date','$description','$text','$author')");
Все, спасибо! Извеняюсь что тупанул и вас отвлек :)
|
|
|
|
|
Записан
|
|
|
|
|
AdmBuxonly ↓
|
 |
|
25 Октябрь, 2008, 02:49:04 , спустя 46 минут 46 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -1
Сообщений: 369 Сила слова: -0.27
|
А вы не подскажите, как сделать, чтобы при добавлении новой статьи админ не писал время и дату добавления от руки, а эти значения проставлялись сами автоматически в базу, а потом я из базы их выведу? Выводить я знаю как..
Я установил значение в базе такое:
ALTER TABLE `articles` CHANGE ` date` ` date` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00'
|
|
|
|
|
Записан
|
|
|
|
|
AdmBuxonly ↓
|
 |
|
25 Октябрь, 2008, 02:51:00 , спустя 1 минуту 56 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -1
Сообщений: 369 Сила слова: -0.27
|
Вот только оно не меняется, а остается таким же 0000-00-00 00:00:00...
|
|
|
|
|
Записан
|
|
|
|
|
adw0rd ↓
|
 |
|
25 Октябрь, 2008, 03:34:58 , спустя 43 минуты 58 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
эдво
Группа: в ухо Карма: не нужна
Сообщений: 17615 Сила слова: 1.67
|
AdmBuxonly, используй для хранения даты TIMESTAMP и присвой параметр по умолчанию CURRENT_TIMESTAMP. И тогда ничего не надо передавать при создании даты, она вставиться текущая.
Или если необходимо обновить дату, то
`date` = NOW()
|
|
|
|
« Последнее редактирование: 25 Октябрь, 2008, 03:38:00 от adw0rd »
|
Записан
|
|
|
|
|
adw0rd ↓
|
 |
|
25 Октябрь, 2008, 03:36:42 , спустя 1 минуту 44 секунды
|
НЕ ХУЕТА!
ХУЕТА!
|
эдво
Группа: в ухо Карма: не нужна
Сообщений: 17615 Сила слова: 1.67
|
Короче, для первого варианта, запрос должен выглядить так:
ALTER TABLE `articles` CHANGE `date` `date` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
|
|
|
|
|
Записан
|
|
|
|
|
AdmBuxonly ↓
|
 |
|
25 Октябрь, 2008, 07:13:07 , спустя 3 часа 36 минут 25 секунд
|
НЕ ХУЕТА!
ХУЕТА!
|
Карма: -1
Сообщений: 369 Сила слова: -0.27
|
ок, спс...
|
|
|
|
|
Записан
|
|
|
|
|