вобщем, есть страница /index.php с которой мы переходим на /index.php?public=post
вот как то так
[php:1:ec4268c35f]actoin = $_GET["public"];
if ($action = 'post')
{
$title = $_POST["title"];
$post = $_POST["post"];
$category_id= $_POST["category"];
$view = $_POST["view"];
$date = date('d ').month().date(' Y');
$time = date('H:i:s');
$author = $_SESSION["name_user"];
$query = mysql_query("SELECT `name` FROM `mv_category`" ) or die (mysql_error());
$row = mysql_fetch_array($query);
{
$name_category = $row["name"];
}
if(!empty($title) && (!empty($post)))
{
if (isset($_POST["ok"]))
{
mysql_query("INSERT INTO `mv_articles`(title, content,date,time,author,name_category, category_id)
VALUES ('$title', '$post' ,'$date', '$time ', '$author', '$name_category', '$category_id')")or die("Invalid query: " . mysql_error());
}
}
else
{
echo '<div class = "error shadowtext">Простите, но нужно заполнить все</div>';
}
}[/php:1:ec4268c35f]
проблема вот в чем: [php:1:ec4268c35f]else
{
echo '<div class = "error shadowtext">Простите, но нужно заполнить все</div>';
}[/php:1:ec4268c35f]
выводится и на странице /index.php, хотя условие должно на /index.php?public=post
если вдруг че, то не нужно посылать меня читать про видимость переменных, читал пару раз, ничего нового не узнал =D
У тебя этот else [php:1:10a87de699]{
echo '<div class = "error shadowtext">Простите, но нужно заполнить все</div>';
}[/php:1:10a87de699]
относится к другому if'у.
добавлено спустя 3 минуты:
прилепил скриншот
TOOZ,а вот и нет прикрепил свой скрин))авот весь код
[php:1:5561ba4915]
<?
include $_SERVER[DOCUMENT_ROOT].'/includes/location/top.php';
if (isset($_SESSION))
{
if (($_SESSION["status"] == 'admin') || ($_SESSION["status"] == 'redactor'))
{
$actoin = $_GET["public"];
if ($action = 'post')
{
$title = $_POST["title"];
$post = $_POST["post"];
$category_id= $_POST["category"];
$view = $_POST["view"];
$date = date('d ').month().date(' Y');
$time = date('H:i:s');
$author = $_SESSION["name_user"];
$query = mysql_query("SELECT `name` FROM `mv_category`" ) or die (mysql_error());
$row = mysql_fetch_array($query);
{
$name_category = $row["name"];
}
if(!empty($title) && (!empty($post)))
{
if (isset($_POST["ok"]))
{
mysql_query("INSERT INTO `mv_articles`(title, content,date,time,author,name_category, category_id)
VALUES ('$title', '$post' ,'$date', '$time ', '$author', '$name_category', '$category_id')")or die("Invalid query: " . mysql_error());
}
}
else
{
echo '<div class = "error shadowtext">Простите, но нужно заполнить все</div>';
}
}
echo '
<div class = "back"> <a href = "/admin/"><span class = "larr">←</span> Вернуться в панель</a></div>
<div class = "add_info">
<table width = "100%">
<tr>
<td align = "left">
От имени: <span class = "public"><a href = "#">'.$_SESSION["name_user"].'</a>
</td>
<td align = "right">
Дата: <span class = "time">'.date("d").' '.month().'</span>
</td>
</tr>
</table>
<form method = "post" action = "index.php?bublic=post">
<input type = "text" style = "width: 100%;" name = "title"><br>
<textarea name = "post" style = "width: 100%; height: 220px;"></textarea><br>
<select name = "category">';
$query = mysql_query("SELECT * FROM `mv_category`" ) or die (mysql_error());
while($row = mysql_fetch_array($query))
{
$id_cat = $row["id"];
$name_cat = $row["name"];
echo '<option value = '.$id_cat.'>'.$name_cat.'</option>';
}
echo '</select>
<select name = "view">
<option value = "show">Опубликовать сразу</option>
<option value = "hidden">Просто сохранить</option>
<input type = "submit" name = "ok" value = "Опубликовать">
</form>
</div>';
}
else {echo '<div class = "error shadowtext">У вас нет прав для просмотр этого раздела</div>';}
}
else {echo '<div class = "error shadowtext">Эта страница доступна только зарегестрированым пользователям</div>';}
include HOME.'/includes/location/bottom.php';
?>
[/php:1:5561ba4915]
Во-первых у тебя переменная названа не правильно.
$actoin = $_GET["public"];
if ($action = 'post')
добавлено спустя 2 минуты:
и тут
<form method = "post" action = "index.php?bublic=post">
Бублик какойто, а не паблик
добавлено спустя 3 минуты:
И вообще так не делается.
Для этих вещей switch-case есть.
== -знак равенства
=== -знак идентичности. При подобном я пользовался вторым.
Pisatel, два этих знака это знаки сравнения, но первый не учитывает типы (сводит к одинаковому, если возможно).
http://php.net/manual/ru/language.operators.comparison.php