Не регистриран потребител да неможе да пише

ReD_z0n3

Registered
Как мога да направя не регистриран потребител да неможе да добавя примерно : Новина в сайта. И когато не е регистран да му изписва някакъв текст. Защото , аз пробвах , ама нещо не се получи. :D Ето го кода.

PHP:
<?php
if (isset($_POST["submit"])) {
//настройки за база данни
$dbhost = "#";
$dbuser = "#";
$dbpass = "#";
$dbname = "#";
$conn = mysql_connect($dbhost, $dbuser, $dbpass)or die(mysql_error());
mysql_select_db($dbname, $conn)or die(mysql_error());
mysql_query("SET NAMES utf8");
if (!empty($_POST["name"])) $name = htmlspecialchars($_POST["name"]);
else $errMsg = "Не сте въвели име на новината!<br />";
if (!empty($_POST["news"])) $news = htmlspecialchars($_POST["news"]);
else $errMsg = "Не сте въвели новината!<br />";
if (empty($errMsg)) {
$insert = mysql_query("INSERT INTO news(name, news) VALUES('$name', '$news')")or die(mysql_error());
echo '<font color="red"><b>Проекта е добавен успешно! И ще бъде прегледан от екипа ни.</b> </font><a href="index.php"><b>Към главната страница</b></a>';
} else echo $errMsg;
mysql_close();
}
?>
 
PHP:
<?php
if(!session_is_registered(username)){
echo "Трябва да си регистриран, за да ви";
} else {
if (isset($_POST['submit'])) {
//настройки за база данни
$dbhost = "#";
$dbuser = "#";
$dbpass = "#";
$dbname = "#";
$conn = mysql_connect($dbhost, $dbuser, $dbpass)or die(mysql_error());
mysql_select_db($dbname, $conn)or die(mysql_error());
mysql_query("SET NAMES utf8");
if (!empty($_POST["name"])) $name = htmlspecialchars($_POST["name"]);
else $errMsg = "Не сте въвели име на новината!<br />";
if (!empty($_POST["news"])) $news = htmlspecialchars($_POST["news"]);
else $errMsg = "Не сте въвели новината!<br />";
if (empty($errMsg)) {
$insert = mysql_query("INSERT INTO news(name, news) VALUES('$name', '$news')")or die(mysql_error());
echo '<font color="red"><b>Проекта е добавен успешно! И ще бъде прегледан от екипа ни.</b> </font><a href="index.php"><b>Към главната страница</b></a>';
} else echo $errMsg;
mysql_close();
}
}
?>

Другия вариант е с:
PHP:
<?php
session_start();
if(isset($_SESSION["username"])) {
echo 'Логнат си!';
}
else {
echo 'Не си логнат!';
}
?>
 
ReD_z0n3 каза:
нещо не се получава.. :(
Какво не се получава? Говори с примери!
PHP:
<?php
if (isset($_POST["submit"])) {
//настройки за база данни
$dbhost = "#";
$dbuser = "#";
$dbpass = "#";
$dbname = "#";
$conn = mysql_connect($dbhost, $dbuser, $dbpass)or die(mysql_error());
mysql_select_db($dbname, $conn)or die(mysql_error());
mysql_query("SET NAMES utf8");
if (!empty($_POST["name"])) $name = htmlspecialchars($_POST["name"]);
else $errMsg = "Не сте въвели име на новината!<br />";
if (!empty($_POST["news"])) $news = htmlspecialchars($_POST["news"]);
else $errMsg = "Не сте въвели новината!<br />";
if (empty($errMsg)) {
$insert = mysql_query("INSERT INTO news(name, news) VALUES('$name', '$news')")or die(mysql_error());
echo '<font color="red"><b>Проекта е добавен успешно! И ще бъде прегледан от екипа ни.</b> </font><a href="index.php"><b>Към главната страница</b></a>';
} 
else {
echo $errMsg;
}
mysql_close();
}
?>

else {
echo $errMsg;
}

тук не бяха отворени и затрорени скобите.
 
rutera24 каза:
ReD_z0n3 каза:
нещо не се получава.. :(
Какво не се получава? Говори с примери!
PHP:
<?php
if (isset($_POST["submit"])) {
//настройки за база данни
$dbhost = "#";
$dbuser = "#";
$dbpass = "#";
$dbname = "#";
$conn = mysql_connect($dbhost, $dbuser, $dbpass)or die(mysql_error());
mysql_select_db($dbname, $conn)or die(mysql_error());
mysql_query("SET NAMES utf8");
if (!empty($_POST["name"])) $name = htmlspecialchars($_POST["name"]);
else $errMsg = "Не сте въвели име на новината!<br />";
if (!empty($_POST["news"])) $news = htmlspecialchars($_POST["news"]);
else $errMsg = "Не сте въвели новината!<br />";
if (empty($errMsg)) {
$insert = mysql_query("INSERT INTO news(name, news) VALUES('$name', '$news')")or die(mysql_error());
echo '<font color="red"><b>Проекта е добавен успешно! И ще бъде прегледан от екипа ни.</b> </font><a href="index.php"><b>Към главната страница</b></a>';
} 
else {
echo $errMsg;
}
mysql_close();
}
?>

else {
echo $errMsg;
}

тук не бяха отворени и затрорени скобите.

Пак , като съм logout-нат ми дава да пиша мнение ( тема ) :!:
 
PHP:
<?php
session_start();
include ("config.php");
if (isset($_SESSION["name"])) {
echo '<table width="300" height="10" border="1"> 
<tr><td><a href="index.php">Новини</a> | <a href="addnews.php">Добави новина</a> | <a href="newsadmin.php">АДМИН Панел</a></td></tr></table> 
<form action="" method="post"> 
Име на новина: <input type="text" name="name" /> 
<br /> 
Цялата новина: <input type="text" name="news"> 
<br /> 
<input type="submit" name="submit" value="Добави" /> 
</form>';
if (isset($_POST["submit"])) {
if (!empty($_POST["name"])) $name = htmlspecialchars($_POST["name"]);
else $errMsg = "Не сте въвели име на новината!<br />";
if (!empty($_POST["news"])) $news = htmlspecialchars($_POST["news"]);
else $errMsg = "Не сте въвели новината!<br />";
if (empty($errMsg)) {
$insert = mysql_query("INSERT INTO news(name, news) VALUES('$name', '$news')")or die(mysql_error());
echo '<font color="red"><b>Новината е добавена успешно!</b> </font><a href="index.php"><b>Новини</b></a>';
} else echo $errMsg;
mysql_close();
}
}
else {
echo 'Нямате права да пишете';
}
?>

for you
 

Back
Горе