Will Up 0 Denunciar post Postado Janeiro 11, 2011 Quando tento gravar os dados de um formulário no BD, retorna esse Warning: Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively in Unknown on line 0 Essa é a página q grava: <?php session_start(); include"config.php"; $qData = "select * from `users` where (`Uid` = '".$_SESSION["Uid"]."')"; $rData = mysql_query($qData) or die(mysql_error()); $aData = mysql_fetch_array($rData); $Username = $_POST[username]; $Password = $_POST[Password]; $First_Name = $_POST[First_Name]; $Last_Name = $_POST[Last_Name]; $Email_Address = $_POST[Email_Address]; $Country = $_POST[Country]; $Titulo_portf = $_POST[Titulo_portf]; $Cor = $_POST[Cor]; $Avatar = $_FILES["avatar"]["name"]; $tmp_name = $_FILES["avatar"]["tmp_name"]; $Status = $_POST[status]; $t = time(); $pasta = 'avatar/'; $extensao = strtolower(end(explode('.', $Avatar))); $nome = md5(uniqid()) . '.' . $extensao; if(move_uploaded_file($tmp_name, $pasta . $nome)){ $q1 = "UPDATE `users` SET `First_Name` = '".$First_Name."', `Last_Name` = '".$Last_Name."', `Email_Address` = '".$Email_Address."', `Titulo_portf` = '".$Titulo_portf."', `Cor` = '".$Cor."', `Avatar` = '".$nome."', `Country` = '".$Country."' WHERE `Uid` = '".$_SESSION["Uid"]."'"; mysql_query($q1); header("location: myimages.php"); } ?> O que está acontecendo? Compartilhar este post Link para o post Compartilhar em outros sites
alvarogtc 1 Denunciar post Postado Janeiro 11, 2011 Warning: Unknown: Your script possibly relies on a session side-effect which existed until PHP 4.2.3. Please be advised that the session extension does not consider global variables as a source of data, unless register_globals is enabled. You can disable this functionality and this warning by setting session.bug_compat_42 or session.bug_compat_warn to off, respectively in Unknown on line 0 Traduzindo resumidamente: ATENCAo: DESCONHECIDO: seu script esta tendo realizar uma funcao que existia antes do php 4.2.5 . Nao consideram variaveis globais como dados a não ser que você ative a funcao register_Globals (nao recomendado e vai ser extinta no php6) Bem de acordo com o erro (não estou afirmando) o codigo é um pouco ultrapassado e uma possibilidade de funcionar seria ativar a funcao register_Gloabals em geral um arquivo php.ini com register_gloabals = ON na pasta onde esta o script... Compartilhar este post Link para o post Compartilhar em outros sites
Will Up 0 Denunciar post Postado Janeiro 11, 2011 "Bem de acordo com o erro (não estou afirmando) o codigo é um pouco ultrapassado" Ultrapassado como, não está tudo normal? :( Ativei o register_globals e uma página em branco é exibida no lugar do ero. Tinha desativado por isso: http://forum.imasters.com.br/index.php?/topic/418466-deslogado-do-sistema-apos-gravar-dados-no-mysql/ O estranho é q tudo estava normal ontem oO Compartilhar este post Link para o post Compartilhar em outros sites
alvarogtc 1 Denunciar post Postado Janeiro 11, 2011 como eu disse nao estava afirmando, estava apenas lendo a msg de erro.. você ja olhou com o seu suporte?? sobre esse erro. tenta assim: coloca isso no seu htaccess: php_flag session.bug_compat_42 1 php_flag session.bug_compat_warn 0 senao funcionar cria um arquivo chamado ini.php e coloca no seu public_html se o servidor for linux com cPanel session.bug_compat_42 = 1 session.bug_compat_warn = 0 me diz se resolveu Compartilhar este post Link para o post Compartilhar em outros sites
Will Up 0 Denunciar post Postado Janeiro 11, 2011 Alterando o htaccess, dá Internal Server Error. Do outro jeito fica tudo igual, mostrando o erro ainda :( Compartilhar este post Link para o post Compartilhar em outros sites
alvarogtc 1 Denunciar post Postado Janeiro 11, 2011 Amigo então verifica com sua hospedagem se de ontem pra ca atualizaram o php ou apache, eu tenho um vps e estava com php5.2.13 atualizei para 5.3.4 e oq apareceu de deprecated e warning foi fora do normal.. Passe o erro pra eles, deve ter uma solução. Compartilhar este post Link para o post Compartilhar em outros sites
Will Up 0 Denunciar post Postado Janeiro 11, 2011 Me disseram isso "Não vejo o que possa causar isso no seu script. Ative e desative o register_globals para ver se faz diferença". Veja o que eu achei: http://www.spiration.co.uk/post/1231/Your%20script%20possibly%20relies%20on%20a%20session%20side-effect Alterei só o _SESSION[uid] (o que conecta o script acima) e mas não conectou, será que devo alterar todas as sessions? login.php <?php session_start(); include"config.php"; if (isset($_POST[login])) { $Username = strip_tags($_POST[username]); $Password = strip_tags($_POST[password]); if(empty($Username) || empty($Password)) { echo "<br><center>Todos os campos devem ser preenchidos!</center>"; require_once("loginform.php"); require_once("footer.php"); } else { $password11 = $_POST[password]; $qlogin = "select * from `users` where `Username` = '$Username' and `Password` = '$password11' and `Status` = 'Active'"; $rlogin = mysql_query($qlogin) or die(mysql_error()); if(mysql_num_rows($rlogin) == '1') { if($alogin = mysql_fetch_array($rlogin)) { $_SESSION[uid] = $alogin[uid]; $_SESSION[username] = $alogin[username]; $_SESSION[Email_Address] = $alogin[Email_Address]; $_SESSION[Name] = $alogin[First_Name]; $_SESSION[Last_Name] = $alogin[Last_Name]; $_SESSION[First_Name] = $alogin[First_name]; $_SESSION[Country] = $alogin[Country]; $timestamp = mktime(date("H")-3, date("i"), date("s"), date("m"), date("d"), date("Y")); $hora=gmdate("H:i:s", $timestamp); $data=date("d/m/y"); // Grava os dados no BD $inserir = mysql_query("INSERT INTO logins (id, usuario, email, ip, data, hora) VALUES ('', '$alogin[username]', '$alogin[Email_Address]', '".$_SERVER['REMOTE_ADDR']."', '$data', '$hora')"); ?> <HTML> <HEAD> <script LANGUAGE="JavaScript"> <!-- Begin redirTime = "1000"; redirURL = "myimages.php"; function redirTimer() { self.setTimeout("self.location.href = redirURL;",redirTime); } // End --> </script> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>Login</title> <link rel="stylesheet" type="text/css" href="style.css"> </HEAD> <BODY onLoad="redirTimer()"> <? echo'<br><br><br> <center><img border="0" src="/imagens/loading.gif"><br><br><b>Se você não ser redirecionado em cinco segundos <a href="index.php">Clique Aqui</a></b></center>'; } } else { require_once("loginform.php"); ?> <div id='aviso'><center style='background: #FCC; color: #A00; margin-top: 0; font-size: 14px; padding: 5px;'><?=USUARIO_INVALIDO?></center></div> <? require_once("footer.php"); } } } ?> Compartilhar este post Link para o post Compartilhar em outros sites
alvarogtc 1 Denunciar post Postado Janeiro 11, 2011 eu to de saida agora e sem tempo pra olhar, mas a principio algo que ja via aos montes $Username = strip_tags($_POST[username]); $Password = strip_tags($_POST[password]); // coloca aspas em tudo $Username = strip_tags($_POST["username"]); $Password = strip_tags($_POST["password"]); Compartilhar este post Link para o post Compartilhar em outros sites