Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Boa Tarde, meu site funcionava normalmente no WAMPSERVER depois que eu passei para a hospedagem configurei as database tudo certim ok !
No Wamp funciona normal mais quando vo tentar logar pela hospedagem acontece o seguinte erro:
Warning: Cannot modify header information - headers already sent by (output started at /home/citrusin/public_html/citrus2/Usuarios/config.php:1) in /home/citrusin/public_html/citrus2/Usuarios/login-exec.php on line 46
Codigo da pagina Config:
<?php
$admin_password = "senha"; // senha da área de administração (/admin)
$mysql_hostname = "localhost"; // servidor MySQL
$mysql_user = "root"; // usuário MySQL
$mysql_password = "senha123"; // senha MySQL
$mysql_database = "Informatica"; // banco de dados MySQL
$prefix = ""; // prefixo das tabelas (desnecessário)
// não configure aqui
$installed = true; //
$env = $_SERVER['QUERY_STRING'];
$naofaz = Array("order", "concat", "union", "ORDER", "CONCAT", "UNION", "select", "SELECT", "drop", "DROP");
$env = str_replace($naofaz, "%SQLI", $env); die('<script> location.href="about:blank"; </script>');
}
$bd = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
mysql_select_db($mysql_database, $bd) or die("Could not select database");
$con = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
mysql_select_db($mysql_database, $con) or die("Could not select database");
$conn = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
mysql_select_db($mysql_database, $conn) or die("Could not select database");
$link = mysql_connect($mysql_hostname, $mysql_user, $mysql_password) or die("Could not connect database");
mysql_select_db($mysql_database, $link) or die("Could not select database");
$db = mysql_select_db($mysql_database) or die("Could not select database");
if($installed==false) {
die("<script> location.href='install/'; </script>");
}
if(is_dir("install") AND $installed==false) {
die("Exclua o diretório \"install\" para continuar.");
} die("Falta CHMOD 777 em \"uploadedimage\"");
}
?>
Codigo do login-exec.php:
<?php
session_start();
//Start session
//Include database connection details
require_once('config.php');
//Array to store validation errors
$errmsg_arr = array();
//Validation error flag
$errflag = false;
//Connect to mysql server
include("config.php");
//Function to sanitize values received from the form. Prevents SQL injection
function clean($str) {
//$str = @trim($str);
if(get_magic_quotes_gpc()) {
$str = stripslashes($str);
}
return mysql_real_escape_string($str);
}
//Sanitize the POST values
$login = clean($_POST['login']);
$login = substr($login, 0, 10);
$password = clean($_POST['password']);
$password = substr($password, 0, 16);
//Input Validations
if($login == '') {
$errmsg_arr[] = 'Login ID missing';
$errflag = true;
}
if($password == '') {
$errmsg_arr[] = 'Password missing';
$errflag = true;
}
//If there are input validations, redirect back to the login form
if($errflag) {
$_SESSION['ERRMSG_ARR'] = $errmsg_arr;
session_write_close();
header("location: index.php");
exit();
}
//Create query
$qry="SELECT * FROM members WHERE UserName='$login' AND Password='$password'";
$result=mysql_query($qry);
//Check whether the query was successful or not
if($result) {
if(mysql_num_rows($result) > 0) {
//Login Successful
session_regenerate_id();
$member = mysql_fetch_assoc($result);
@session_start();
$_SESSION['SESS_MEMBER_ID'] = $member['member_id'];
$_SESSION['SESS_FIRST_NAME'] = $member['FirstName'];
$_SESSION['SESS_LAST_NAME'] = $member['profImage'];
//$_SESSION['SESS_PRO_PIC'] = $member['profImage'];
//session_write_close();
header("location: lol.php");
exit();
}else {
//Login failed
header("location: login-failed.php");
exit();
} die("Query failed");
}
?>
Por favor alguem me ajuda ?
Agora esta dando:
Warning: session_regenerate_id() [function.session-regenerate-id]: Cannot regenerate session id - headers already sent in /home/citrusin/public_html/citrus2/Usuarios/login-exec.php on line 58
Warning: Cannot modify header information - headers already sent by (output started at /home/citrusin/public_html/citrus2/Usuarios/config.php:1) in /home/citrusin/public_html/citrus2/Usuarios/login-exec.php on line 66
Alguem? por favor.
Tenta usar assim:
header("Location: login-failed.php");
Caso não funcione, use javascript para fazer o redirecionamente, header é meio chato dependendo da versão do apache que você utiliza.
<?php
print('<script language= "JavaScript" type=" text/JavaScript">
location.href="pagina.php"
</script>');
?>>
Coloque:
ob_start();
na primeira linha do arquivo login-exec.php
Mais detalhes no manual do PHP.
Booa Henrique Barcelos seu metodo deu certim.
Muito obrigado galera pelas resposta!
Brigadão msm.
Utilize outra forma de redirecionamento ou pesquise alguma forma de solução para o redirecionamento utilizando o "header".