проблем при урок за анкета

king6666

Registered
Здравейте опитвам се да направя анкета гледах този урок http://web-tourist.net/login/login/view.php?st=2472 взех кода направих 1 беза данни казва се poll копирах кода дословно само добавих 1 парола за базата данни
в страницата config_poll.php ето и какво става http://212.233.237.101/cs/admin.php паролата на админ панела е 123 като се упитам да вляза и ми се обновява страницата не влиза кажете какво да направя ?
 
admin.php
Код:
<?php 
session_start(); 
include("config_poll.php"); 
$admin = $_SESSION['admin']; 
if (isset($_SESSION['admin']) && $admin == 1) { 
echo "<a href=\"?page=add\">Добави анкета</a><br><br>"; 
$page = $_GET['page']; 
if ($page == "edit" && isset($_GET['id']) && is_numeric($_GET['id'])) 
{ 
$id = $_GET['id']; 
$query_poll_exzit = mysql_query("SELECT * FROM poll WHERE id = '$id' LIMIT 1"); 
$dali_poll_exzit = mysql_num_rows($query_poll_exzit); 
if ($dali_poll_exzit > 0) { 
if (isset($_POST['submit'])) { 
if ($_POST['vapros_edit'] != NULL && ($_POST['podrejdane_edit'] == 1 || $_POST['podrejdane_edit'] == 2) && ($_POST['off_poll'] == 0 || $_POST['off_poll'] == 1)) { 
mysql_query("UPDATE poll SET vapros = '".$_POST['vapros_edit']."',podrejdane = '".$_POST['podrejdane_edit']."',status = '".$_POST['off_poll']."' WHERE id = '$id' LIMIT 1"); 

$query_otgovorite = mysql_query("SELECT * FROM otgovori WHERE id_poll = '$id' ORDER BY id ASC"); 
while ($otgovorite = mysql_fetch_array($query_otgovorite)) { 
$idtoo = $otgovorite['id']; 
mysql_query("UPDATE otgovori SET otgovor = '".$_POST["otgovor_$idtoo"]."' WHERE id = '".$otgovorite['id']."'"); 
} 
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"3;URL=?\" >"; 
echo "<b>Анкетата е редактирана успешно!</b>"; 
} 
} else { 
$poll_exzit = mysql_fetch_array($query_poll_exzit); 
$query_otgovorite = mysql_query("SELECT * FROM otgovori WHERE id_poll = '$id' ORDER BY id ASC"); 
?> 
<form action="" method="post"> 
Въпрос: <input type="text" name="vapros_edit" value="<?=$poll_exzit['vapros']?>" size="50"><br><br> 
<?php 
$nomer = 1; 
while ($otgovorite = mysql_fetch_array($query_otgovorite)) { 
?> 
Отговор <?=$nomer?>: <input type="text" name="otgovor_<?=$otgovorite['id']?>" value="<?=$otgovorite['otgovor']?>" size="50"><br> 
<?php 
$nomer++; 
} 
?><br> 
Подреждане: <select name="podrejdane_edit"> 
<option value="1"<?php if ($poll_exzit['podrejdane'] == 1) { echo " selected=\"selected\""; } ?>>Стандартно</option> 
<option value="2"<?php if ($poll_exzit['podrejdane'] == 2) { echo " selected=\"selected\""; } ?>>Брой отговори</option> 
</select><br> 
Изключване на гласуването: <select name="off_poll"> 
<option value="1"<?php if ($poll_exzit['status'] == 1) { echo " selected=\"selected\""; } ?>>Не</option> 
<option value="0"<?php if ($poll_exzit['status'] == 0) { echo " selected=\"selected\""; } ?>>Да</option> 
</select><br> 
<input type="submit" name="submit" value="Редактирай"> 
</form> 
<?php 
} 
} else { 
echo "Не съществува такава анкета!"; 
} 
?> 
<?php 
} 
elseif ($page == "add") 
{ 
if (isset($_POST['submit'])) { 
$kolko_otgovora = 0; 
for ($i=1;$i<=15;$i++) { 
$otgovor4e = trim($_POST["otgovor_$i"]); 
if ($otgovor4e != NULL) { 
$otgovorite[] = $otgovor4e; 
$kolko_otgovora++; 
} 
} 

if ($kolko_otgovora >= 2 && $_POST['vapros'] != NULL && ($_POST['podrejdane'] == 1 || $_POST['podrejdane'] == 2)) { 
$kolko_otgovori = count($otgovorite); 
mysql_query("INSERT INTO poll (vapros,podrejdane) VALUES ('".$_POST['vapros']."','".$_POST['podrejdane']."')"); 

$posleden_id = mysql_fetch_array(mysql_query("SELECT * FROM poll ORDER BY id DESC LIMIT 1")); 
$posleden_id = $posleden_id['id']; 
for ($no=0;$no<$kolko_otgovori;$no++) { 
if ($otgovorite[$no] != NULL) { 
mysql_query("INSERT INTO otgovori (id_poll,otgovor) VALUES ('$posleden_id','$otgovorite[$no]')"); 
} 
} 
echo "<b>Анкетата е успешно създадена!</b>"; 
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"3;URL=?\" >"; 
} else { echo "Не сте въвели въпрос или не сте въвели най-малко 2 отговора!"; } 

} else { 
?> 
<form action="" method="post"> 
Въпрос: <input type="text" name="vapros" size="50"><br><br> 
<?php 
for ($i=1;$i<=15;$i++) { 
?> 
Отговор <?=$i?>: <input type="text" name="otgovor_<?=$i?>" size="50"><br> 
<?php 
} 
?> 
<br> 
Подреждане: <select name="podrejdane"> 
<option value="1">Стандартно</option> 
<option value="2">Брой отговори</option> 
</select><br> 
<input type="submit" name="submit" value="Създай"> 
</form> 
<?php 
} 
} 
elseif ($page == "dell" && isset($_GET['id']) && is_numeric($_GET['id'])) 
{ 
$id = $_GET['id']; 
mysql_query("DELETE FROM poll WHERE id = '$id'"); 
mysql_query("DELETE FROM otgovori WHERE id_poll = '$id'"); 
mysql_query("DELETE FROM ips WHERE id = '$id'"); 
echo "Анкетата е успешно изтрита!"; 
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"3;URL=?\" >"; 
} 
else 
{ 
$query_polls = mysql_query("SELECT * FROM poll ORDER BY id DESC"); 
?> 
<table border="1"> 
<tr><td><b>ID:</b></td><td><b>Анкета</b></td><td><b>Опции</b></td></tr> 
<?php 
while ($polls = mysql_fetch_array($query_polls)) { 
?> 
<tr><td><?=$polls['id']?></td><td><?=$polls['vapros']?></td><td>[<a href="?page=edit&id=<?=$polls['id']?>">Редактирай</a>] [<a href="?page=dell&id=<?=$polls['id']?>">Изтрий</a>]</td></tr> 
<?php 
} 
?> 
</table> 
<?php 
} 
if ($page == "logout") { $_SESSION['admin'] = 0; echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"1;URL=?\" >"; } 
echo "<br><br><a href=\"?page=logout\">Изход</a>"; 
} else { 
if (isset($_POST['submit']) && $_POST['pass_admin'] == $pass_admin) { 
$_SESSION['admin'] = 1; 
echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"1;URL=?\" >"; 
} else { 
?> 
<form action="" method="post"> 
Парола: <input type="password" name="pass_admin" size="10"> 
<input type="submit" name="submit" value="Влез"> 
</form> 
<?php 
} 
} 
?>

опитай така.
 
Благодаря много вече влизам в контролния панел и като давам да добовя анкета пиша въпроса и давам 3 отговора и ми излиза Не сте въвели въпрос или не сте въвели най-малко 2 отговора! а аз съм въвел какво да направя ?
http://212.233.237.101/cs/admin.php ето кво става .
 
Код:
<?php 
session_start(); 
include("config_poll.php"); 
$admin = $_SESSION['admin'];

if (isset($_SESSION['admin']) && $admin == 1) { 
	echo "<a href=\"?page=add\">Добави анкета</a><br><br>"; 
	$page = $_GET['page']; 
	if ($page == "edit" && isset($_GET['id']) && is_numeric($_GET['id'])) 
	{ 
		$id = $_GET['id']; 
		$query_poll_exzit = mysql_query("SELECT * FROM poll WHERE id = '$id' LIMIT 1"); 
		$dali_poll_exzit = mysql_num_rows($query_poll_exzit); 
		if ($dali_poll_exzit > 0) { 
			if (isset($_POST['submit'])) { 
				if ($_POST['vapros_edit'] != NULL && ($_POST['podrejdane_edit'] == 1 || $_POST['podrejdane_edit'] == 2) && ($_POST['off_poll'] == 0 || $_POST['off_poll'] == 1)) { 
					mysql_query("UPDATE poll SET vapros = '".$_POST['vapros_edit']."',podrejdane = '".$_POST['podrejdane_edit']."',status = '".$_POST['off_poll']."' WHERE id = '$id' LIMIT 1"); 

					$query_otgovorite = mysql_query("SELECT * FROM otgovori WHERE id_poll = '$id' ORDER BY id ASC"); 
					while ($otgovorite = mysql_fetch_array($query_otgovorite)) { 
						$idtoo = $otgovorite['id']; 
						mysql_query("UPDATE otgovori SET otgovor = '".$_POST["otgovor_$idtoo"]."' WHERE id = '".$otgovorite['id']."'"); 
					} 
					echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"3;URL=?\" >"; 
					echo "<b>Анкетата е редактирана успешно!</b>"; 
				} 
			} 
			else { 
				$poll_exzit = mysql_fetch_array($query_poll_exzit); 
				$query_otgovorite = mysql_query("SELECT * FROM otgovori WHERE id_poll = '$id' ORDER BY id ASC"); 
				?> 
				<form action="" method="post"> 
				Въпрос: <input type="text" name="vapros_edit" value="<?php echo $poll_exzit['vapros']; ?>" size="50"><br><br> 
				<?php 
				$nomer = 1; 
				while ($otgovorite = mysql_fetch_array($query_otgovorite)) { 
					?> 
					Отговор <?php echo $nomer; ?>: <input type="text" name="otgovor_<?php echo $otgovorite['id']; ?>" value="<?php echo $otgovorite['otgovor']; ?>" size="50"><br> 
					<?php 
					$nomer++; 
				} 
				?><br> 
				Подреждане: <select name="podrejdane_edit"> 
					<option value="1"<?php if ($poll_exzit['podrejdane'] == 1) { echo " selected=\"selected\""; } ?>>Стандартно</option> 
					<option value="2"<?php if ($poll_exzit['podrejdane'] == 2) { echo " selected=\"selected\""; } ?>>Брой отговори</option> 
				</select><br> 
				Изключване на гласуването: <select name="off_poll"> 
					<option value="1"<?php if ($poll_exzit['status'] == 1) { echo " selected=\"selected\""; } ?>>Не</option> 
					<option value="0"<?php if ($poll_exzit['status'] == 0) { echo " selected=\"selected\""; } ?>>Да</option> 
				</select><br> 
				<input type="submit" name="submit" value="Редактирай"> 
				</form> 
				<?php 
			} 
		} 
		else { 
			echo "Не съществува такава анкета!"; 
		} 
	} 
	elseif ($page == "add") 
	{ 
		if (isset($_POST['submit'])) { 
			$kolko_otgovora = 0; 
			for ($i=1;$i<=15;$i++) { 
				$otgovor4e = trim($_POST["otgovor_$i"]); 
				if ($otgovor4e != NULL) { 
					$otgovorite[] = $otgovor4e; 
					$kolko_otgovora++; 
				} 
			} 
			
			$kolko_otgovori = count($otgovorite);
			if ($kolko_otgovori >= 2 && !empty($_POST['vapros']) && $_POST['podrejdane'] > 0) {  
				mysql_query("INSERT INTO poll (vapros,podrejdane) VALUES ('".$_POST['vapros']."','".$_POST['podrejdane']."')"); 

				$posleden_id = mysql_fetch_array(mysql_query("SELECT * FROM poll ORDER BY id DESC LIMIT 1")); 
				$posleden_id = $posleden_id['id']; 
				for ($no=0;$no<$kolko_otgovori;$no++) { 
					if (!empty($otgovorite[$no])) { 
						mysql_query("INSERT INTO otgovori (id_poll,otgovor) VALUES ('$posleden_id','$otgovorite[$no]')"); 
					} 
				} 
				echo "<b>Анкетата е успешно създадена!</b>"; 
				echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"3;URL=?\" >"; 
			} 
			else { 
				echo "Не сте въвели въпрос или не сте въвели най-малко 2 отговора!"; 
			} 
		} 
		else { 
			?> 
			<form action="" method="post"> 
				Въпрос: <input type="text" name="vapros" size="50"><br><br> 
				<?php 
				for ($i=1;$i<=15;$i++) { 
					?> 
					Отговор <?php echo $i; ?>: <input type="text" name="otgovor_<?php echo $i; ?>" size="50"><br> 
					<?php 
				} 
				?> 
				<br> 
				Подреждане: <select name="podrejdane"> 
					<option value="1">Стандартно</option> 
					<option value="2">Брой отговори</option> 
				</select><br> 
				<input type="submit" name="submit" value="Създай"> 
			</form> 
			<?php 
		} 
	} 
	elseif ($page == "dell" && isset($_GET['id']) && is_numeric($_GET['id'])) 
	{ 
		$id = $_GET['id']; 
		mysql_query("DELETE FROM poll WHERE id = '$id'"); 
		mysql_query("DELETE FROM otgovori WHERE id_poll = '$id'"); 
		mysql_query("DELETE FROM ips WHERE id = '$id'"); 
		echo "Анкетата е успешно изтрита!"; 
		echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"3;URL=?\" >"; 
	} 
	else 
	{ 
		$query_polls = mysql_query("SELECT * FROM poll ORDER BY id DESC"); 
		?> 
		<table border="1"> 
			<tr><td><b>ID:</b></td><td><b>Анкета</b></td><td><b>Опции</b></td></tr> 
			<?php 
			while ($polls = mysql_fetch_array($query_polls)) { 
				?> 
				<tr><td><?php echo $polls['id']; ?></td><td><?php echo $polls['vapros']; ?></td><td>[<a href="?page=edit&id=<?php echo $polls['id']; ?>">Редактирай</a>] [<a href="?page=dell&id=<?php echo $polls['id']; ?>">Изтрий</a>]</td></tr> 
				<?php 
			} 
			?> 
		</table> 
		<?php 
	}	 

	if ($page == "logout") { 
		$_SESSION['admin'] = 0; 
		echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"1;URL=?\" >"; 
	} 
	echo "<br><br><a href=\"?page=logout\">Изход</a>"; 
} 
else { 
	if (isset($_POST['submit']) && $_POST['pass_admin'] == $pass_admin) { 
		$_SESSION['admin'] = 1; 
		echo "<META HTTP-EQUIV=\"refresh\" CONTENT=\"1;URL=?\" >"; 
	} 
	else { 
		?> 
		<form action="" method="post"> 
			Парола: <input type="password" name="pass_admin" size="10"> 
			<input type="submit" name="submit" value="Влез"> 
		</form> 
		<?php 
	} 
} 
?>

Виж пробвай така дали ще стане, ако не ще ти потърсим друга, защото мене ме мързи да пиша в момента система за анкети.


ЕДИТ: Промених кода
 
Пробва ли с променения код... аз го промених...


Сега видях, не си пробвал с променения. Копирал си първия вариант, който ти пуснах. Копирай сега кода и пробвай пак.


ЕДИТ: Сега виждам, че стана :D
 
Брлагодаря много стана но има друг проблем не ми излиза анкетата в function_poll.php отваря ми празна страница .
 
Ей сега ще ти дам кода и за function_poll.php ;)



function_poll.php
Код:
<?php 
function poll($promenliva) { // създаваме функция 
	$ip = getenv("REMOTE_ADDR"); 
	include("config_poll.php"); // добавяме файла за връзка с BD 
	if (isset($promenliva) && is_numeric($promenliva)) { // проверяваме дали сме задали стойност на функцията и ако сме задали дали е число 
		$poll_here = mysql_num_rows(mysql_query("SELECT * FROM poll WHERE id = '$promenliva' LIMIT 1")); // взимаме дадената анкета 
		if ($poll_here > 0) { // ако анкетата съществува нея ще изкарваме в страницата 
			$poll_query = mysql_query("SELECT * FROM poll WHERE id = '$promenliva' LIMIT 1"); 
			$poll = mysql_fetch_array($poll_query); 
			$poll_broi = mysql_num_rows($poll_query); 
		} 
		else { // ако не съществува ще изкараме най-новата добавена анкета 
			$poll_query = mysql_query("SELECT * FROM poll ORDER BY id DESC LIMIT 1"); 
			$poll = mysql_fetch_array($poll_query); 
			$poll_broi = mysql_num_rows($poll_query); 
		} 
	} 
	else { // ако не сме избрали точно дадена анкета ще вземеме последната добавена 
		$poll_query = mysql_query("SELECT * FROM poll ORDER BY id DESC LIMIT 1"); 
		$poll = mysql_fetch_array($poll_query); 
		$poll_broi = mysql_num_rows($poll_query); 
	} 

	if ($poll_broi > 0) { // ако изобщо съществува анкета 
		if ($poll['status'] == 1) { // проверяваме дали сме включили анкетата 
			$dali_si_glasuval = mysql_num_rows(mysql_query("SELECT * FROM ips WHERE ip = '$ip' AND id = '".$poll['id']."'")); 
			if ($dali_si_glasuval == 0) { // проверяваме дали потребителя е гласувал. Ако не е му позволяваме да гласува 
				if (isset($_POST['submit']) && isset($_POST['vote']) && is_numeric($_POST['vote'])) { // малко защити :P 
					$vote = $_POST['vote']; 
					$dali_taq_anketa = mysql_fetch_array(mysql_query("SELECT * FROM otgovori WHERE id = '$vote' LIMIT 1")); 
					if ($dali_taq_anketa['id_poll'] == $poll['id']) { // проверяваме дали отговора е точно към тази анкета 
						mysql_query("UPDATE otgovori SET broi = broi + 1 WHERE id = '$vote' LIMIT 1"); 
						mysql_query("INSERT INTO ips (id,ip) VALUES ('".$poll['id']."','$ip')"); 

						if ($poll['podrejdane'] == 1) { 
							$order_by = "ORDER BY id ASC";
						} // ако е избран тип стандартно подреждане 
						elseif ($poll['podrejdane'] == 2) { 
							$order_by = "ORDER BY broi DESC"; 
						} // ако е избран тип подреждане по гласове 

						$query_otgovori = mysql_query("SELECT * FROM otgovori WHERE id_poll = '".$poll['id']."' $order_by"); 
						$query = mysql_query("SELECT SUM(broi) as kolko FROM otgovori WHERE id_poll = '".$poll['id']."' GROUP BY id_poll"); 
						$votes = mysql_fetch_array($query); 
						$votes = $votes['kolko']; 
						?> 
						<b><?php echo $poll['vapros']; ?></b><br><br> 
						<table border="0"> 
						<?php 
						// изкарваме резултатите от анкетата 
						while ($row_otgovori = mysql_fetch_array($query_otgovori)) { 
							$procent = $row_otgovori['broi'] * (100/$votes); // смятаме процентите 
							$procent = round($procent); // закръгляме ги 
							?> 
							<tr><td><?php echo $row_otgovori['otgovor']; ?></td><td><img src="bar_left.bmp" height="9" border="0"><img src="vote.bmp" width="<?php echo $procent; ?>" height="9" border="0"><img src="bar_right.bmp" height="9" border="0"></td><td>Гласове: <?php echo $row_otgovori['broi']; ?> (<?php echo $procent; ?>%)</td></tr> 
							<?php 
						} 
						?> 
						</table><br> 
						Общо гласове: <b><?php echo $votes; ?></b> 
						<?php 
					} 
				} 
				else { 
					$query_otgovori = mysql_query("SELECT * FROM otgovori WHERE id_poll = '".$poll['id']."' ORDER BY id ASC"); 
					?> 
					<b><?php echo $poll['vapros']; ?></b><br><br> 
					<form action="" method="post"> 
						<?php 
						// тук извеждаме формата за гласуване с възможните отговори 
						while ($row_otgovori = mysql_fetch_array($query_otgovori)) { ?> 
							<input type="radio" name="vote" value="<?php echo $row_otgovori['id']; ?>"> <?php echo $row_otgovori['otgovor']; ?><br> 
						<?php } ?> 
						<input type="submit" name="submit" value="Гласувай"> 
					</form> 
					<?php 
				} 
			} 
			else { // ако е гласувал му извеждаме резултатите 
				if ($poll['podrejdane'] == 1) { $order_by = "ORDER BY id ASC"; } // ако е избран тип стандартно подреждане 
				elseif ($poll['podrejdane'] == 2) { $order_by = "ORDER BY broi DESC"; } // ако е избран тип подреждане по гласове 

				$query_otgovori = mysql_query("SELECT * FROM otgovori WHERE id_poll = '".$poll['id']."' $order_by"); 
				$query = mysql_query("SELECT SUM(broi) as kolko FROM otgovori WHERE id_poll = '".$poll['id']."' GROUP BY id_poll"); 
				$votes = mysql_fetch_array($query); 
				$votes = $votes['kolko']; 
				?> 
				<b><?php echo $poll['vapros']; ?></b><br><br> 
				<table border="0"> 
				<?php 
				while ($row_otgovori = mysql_fetch_array($query_otgovori)) { 
					$procent = $row_otgovori['broi'] * (100/$votes); // смятаме процентите 
					$procent = round($procent); // закръгляме ги 
					?> 
					<tr><td><?php echo $row_otgovori['otgovor']; ?></td><td><img src="bar_left.bmp" height="9" border="0"><img src="vote.bmp" width="<?php echo $procent; ?>" height="9" border="0"><img src="bar_right.bmp" height="9" border="0"></td><td>Гласове: <?php echo $row_otgovori['broi']; ?> (<?php echo $procent; ?>%)</td></tr> 
					<?php 
				} 
				?> 
				</table><br> 
				Общо гласове: <b><?php echo $votes; ?></b> 
				<?php 
			} 
		} 
		else { // ако е изключена ще показваме само резултатите без да даваме право да гласуват 
			if ($poll['podrejdane'] == 1) { $order_by = "ORDER BY id ASC"; } // ако е избран тип стандартно подреждане 
			elseif ($poll['podrejdane'] == 2) { $order_by = "ORDER BY broi DESC"; } // ако е избран тип подреждане по гласове 

			$query_otgovori = mysql_query("SELECT * FROM otgovori WHERE id_poll = '".$poll['id']."' $order_by"); 
			$query = mysql_query("SELECT SUM(broi) as kolko FROM otgovori WHERE id_poll = '".$poll['id']."' GROUP BY id_poll"); 
			$votes = mysql_fetch_array($query); 
			$votes = $votes['kolko']; 
			?> 
			<b><?php echo $poll['vapros']; ?></b><br><br> 
			<table border="0"> 
			<?php 
			// изкарваме резултатите от анкетата 
			while ($row_otgovori = mysql_fetch_array($query_otgovori)) { 
				$procent = $row_otgovori['broi'] * (100/$votes); // смятаме процентите 
				$procent = round($procent); // закръгляме ги 
				?> 
				<tr><td><?php echo $row_otgovori['otgovor']; ?></td><td><img src="bar_left.bmp" height="9" border="0"><img src="vote.bmp" width="<?php echo $procent; ?>" height="9" border="0"><img src="bar_right.bmp" height="9" border="0"></td><td>Гласове: <?php echo $row_otgovori['broi']; ?> (<?php echo $procent; ?>%)</td></tr> 
				<?php 
			} 
			?> 
			</table><br> 
			Общо гласове: <b><?php echo $votes; ?></b> 
			<?php 
		} 
	} 
	else { 
		echo "Няма такава анкета или все още няма добавени анкети!"; // изкарваме съобщение, че няма такава анкета или изобщо не сме добавили 
	} 
} 
?>

Заповядай! ;)
 

Back
Горе