2014-03-25 174 views
-1

我有一个问题,我无法解决。我在html中做了一个登录页面,它将访问accesso.php两个参数:用户名和密码。一旦出现这种情况,如果用户名和密码正确,我可以将数据添加到此特定登录名。如果我回到登录表单,并在字段中用另一个用户名和密码签名以删除某些记录(第112行),则没有以前登录和刷新自身的记录。你知道在会议上帮助我吗?这是我的代码。PHP和会话登录和注销

<html> 
<head> 

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<style type="text/css"> 
#main{ 
margin:0 auto; 
padding:0; 
background-color:grey; 
/*Stile shadow dietro css3*/ 
/*-moz-box-shadow: 5px 5px 100px #FFF;*/ 
/*-webkit-box-shadow: 5px 5px 50px #FFF;*/ 
/*box-shadow: 10px 10px 5px #FFF;*/ 
/*consiglio sempre di specificare le dimensioni del main*/ 
width:500px; 
height:950px; 
margin-top:110px; 

/*Bordi arrotondati css3*/ 
-moz-border-radius: 85px; 
-webkit-border-radius: 15px; 
border-radius: 15px; 

} 

#centro{ 
position:absolute; 
margin-left:70px; 
margin-top:20px; 


} 
h1{ 

color:red; 
} 

p{ 

color:red; 
} 

</style> 
</head> 
<?php 



$archivio=mysql_connect("localhost","root",""); 
$select=mysql_select_db("disco"); 
$username = $_POST["utente"]; //username 
$password = $_POST["password"]; //password 

session_start(); 
$provaT = $_SESSION['username'];//nome del locale non so come lo trova 

echo $provaT;//stampa a video nome del locale 


mysql_query("SET NAMES utf8"); // per caratteri speciali 
$sql = "SELECT * FROM locali WHERE username = '$username' AND password = '$password'"; //query verifica se username e password coincidono 
$res = mysql_query($sql) or die (mysql_error()); 

if(mysql_num_rows($res) > 0)//se è presente 
{ 



    while($row = mysql_fetch_array($res)) { 
    $_SESSION['username'] = $row['nome']; // la sessione prende il nome della colonna nome del db 


    ?> 

<body background="texture_disco.jpg"> 
<div id="main"> 
<div id="centro"> 
<?php 
echo "<h1>Benvenuto ".$row['nome']."</h1>"; 

$space = str_replace(' ',"",$provaT); 
$risultato=mysql_query("SELECT * FROM $space"); 
?> 

<form method="post" action="prova.php" > 
<h5>titolo</h5> 


<input type="name" name="nome" value="" id="nome"> 
<br> 
<br> 
<br> 
<textarea name="des" rows="20" cols="45"> 
Scrivi qui la tua recensione (Max 1000 caratteri ...) 

</textarea> 
<br> 
<br> 
<input type="name" name="link" value="" id="link"> 
<br> 
<br> 
<input type="submit" value="Inserisci Evento"> 

</form> 
<form method="post" action="delete.php" > 
<select name ="record"> 
<?php 

while($ok=mysql_fetch_array($risultato)) 
{ 

echo "<option value='".$ok['_id']."'>".$ok['nome']."</option>"; 

} 

echo '<h1>'.$ok['nome'].'</h1>'; 
?> 
</select> 
<input type="submit" value="Elimina evento" name="delete"> 
</form> 

<input type="submit" value="Elimina sessione" name="delete"> 

    <?php } 
} 

else 
{ 
header("Location: errore.php"); 

} 
$gammaT=mysql_close($archivio); 





?> 

</html> 

这是文件删除的门在哪里数据库中的条目

<html> 

<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 


<style type="text/css"> 

#contEst{ 
top:70; 
margin:0 auto; 
padding:0; 
margin-top:-30px; 
background-image:url('sfondo.jpg'); 
/*Stile shadow dietro css3*/ 
/*-moz-box-shadow: 5px 5px 100px #FFF;*/ 
/*-webkit-box-shadow: 5px 5px 50px #FFF;*/ 
/*box-shadow: 10px 10px 5px #FFF;*/ 
/*consiglio sempre di specificare le dimensioni del main*/ 
width:500px; 
height:500px; 
margin-top:100px; 

/*Bordi arrotondati css3*/ 
-moz-border-radius: 85px; 
-webkit-border-radius: 15px; 
border-radius: 15px; 



} 


</style> 
</head> 






<body> 
<div id="contEst"> 
<?php 

session_start(); 

$provaR = $_SESSION['username']; 
echo '<h1>'.$provaR.'</h1>'; 
$archivio=mysql_connect("localhost","root",""); 
$beta=mysql_select_db("disco"); 
$space = str_replace(' ',"",$provaR); 
$risultato=mysql_query("SELECT * FROM $space"); 
$canc = $_POST["record"]; 
$spazi_titolo =mysql_real_escape_string($canc); 

$via=mysql_query("DELETE FROM $space WHERE _id='$canc'"); 
session_destroy(); 
mysql_close($archivio); 

//////////////// 



///////////////// 
echo '<h3>'."Voce cancellata correttamente".'</h3>'; 
//echo("$provaR"); stampa nome locale 
//echo '<a href="http://localhost/disco/Accesso.php"><input type="submit" value="Torna alla Home"></a>'; 


if(!$_COOKIE){ 
echo '<a href="http://localhost/disco/Accesso.php"><input type="submit" value="Torna alla Home"></a>'; 

} 

else{ 

echo "errore"; 
} 

?> 

</div> 

</body> 

</html> 

,并在此文件“test.php的”我在数据库

<html> 
<head> 

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 

</head> 

<?php 
session_start(); 
$provaT = $_SESSION['username']; 
$title = $_POST['nome']; 
$des = $_POST['des']; 
$link = $_POST["link"]; 
$archivio=mysql_connect("localhost","root",""); 
$beta=mysql_select_db("disco"); 
$spaziT =str_replace(" ", "", $provaT); 
$spazi =mysql_real_escape_string($des); 
$spazi_title =mysql_real_escape_string($title); 
mysql_query("INSERT INTO $spaziT(nome,descrizione,link) VALUES('$spazi_title','$spazi','$link')"); 


echo "Nuovo evento creato"; 

    mysql_close($archivio); 

    echo '<a href="http://localhost/disco/icone.html"><input type="submit" value="Torna alla Home"></a>'; 
?> 




</html> 
+0

请甲酸盐你的代码。 – Dinistro

+0

向我们展示'delete.php'和'prova.php'中的内容 –

回答

0

添加条目不管发生什么事情,这将不起作用:

header("Location: errore.php"); 

头只能如果你还没有任何输出文本浏览器...

这里阅读:http://www.php.net/manual/en/function.header.php

请记住,标题()必须被调用发送任何实际输出之前,无论是正常的HTML标签,文件中的空行或PHP中的空行。使用include或require函数或其他文件访问函数读取代码,并在调用header()之前输出空格或空行是非常常见的错误。使用单个PHP/HTML文件时存在同样的问题。

你也永远不会关闭这些标签

<body background="texture_disco.jpg"> 
    <div id="main"> 
     <div id="centro">