allanlf Postado Agosto 11, 2004 Denunciar Share Postado Agosto 11, 2004 instalei o EasyPHP na minha máquina...já coloquei o meu site dentro da pasta www, só que quando eu acesso ele, o que é em php dá um monte e erro!ainda não mexi no tal de IIS para rodar PHP, tenho configurá-lo?como?Meu windwos é 2000! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 julioromano Postado Agosto 11, 2004 Denunciar Share Postado Agosto 11, 2004 cara, o EasyPHP instala o Apache, PHP e MySQL na tua máquinaO servidor q tu vai usah vai c o Apache, então nem precisa meche no IIS.Agora, quais saum os erros q estão dando?Julio Romano Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 allanlf Postado Agosto 11, 2004 Autor Denunciar Share Postado Agosto 11, 2004 Notice: Undefined variable: tela in c:\arquivos de programas\easyphp1-7\www\nesw\cadastrar.php on line 40o final "on line 40" muda de acordo com o endereço... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 julioromano Postado Agosto 11, 2004 Denunciar Share Postado Agosto 11, 2004 Isso diz q a variável $tela não foi definida...Roda esse script e posta ae c rodo normal: <?php phpinfo(); ?> Julio Romano Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 allanlf Postado Agosto 11, 2004 Autor Denunciar Share Postado Agosto 11, 2004 cara apareceu um monte de coisa!!!quer que eu te mande por pm o que tá aqui? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Agosto 11, 2004 Denunciar Share Postado Agosto 11, 2004 Não precisa.Se apareceu aquele erro de "undefined variable" é porque o seu PHP está funcionando. É ele que gera aquele erro.Poste o código que está usando pra gente dar uma analizada, pode ser?Suspeito [tenho quase certeza] que o erro seja de register_globals, mas só vou poder confirmar quando vir o código, ok? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 allanlf Postado Agosto 11, 2004 Autor Denunciar Share Postado Agosto 11, 2004 tenho um cadastro de e-mails:com o erro:Notice: Undefined variable: tela in c:\arquivos de programas\easyphp1-7\www\nesw\cadastrar.php on line 40Notice: Undefined variable: tela in c:\arquivos de programas\easyphp1-7\www\nesw\cadastrar.php on line 66Cadastre-se e receba nossas novidades! Nome E-mail Notice: Undefined variable: erro in c:\arquivos de programas\easyphp1-7\www\nesw\cadastrar.php on line 130ele está inserido no documento como um <?include("nesw/cadastrar.php");?>e o código dele é:<?phpinclude('config.php');function verifica_mail($mail){ if (strpos ($mail, "@") == 0) { return true; } list($user,$domain)=split("@",$mail,2); if (checkdnsrr($domain,"MX")) { return false; } else { return true; }}if($tela == "2"){ $n_erros = 0; $erro = " "; if(empty($email)) { $erro.= "Obrigatório digitar o e-mail.<br>"; $n_erros++; } elseif (verifica_mail($email)) { $erro.= "Confira o e-mail e tente novamente.<br>"; $n_erros++; } if(empty($nome)) { $erro.= "Obrigatório digitar o nome.<br>"; $n_erros++; }}//if($tela==2)//if (!empty($nome))if($tela == 2 and $n_erros == 0){ $tamanho = filesize($file_cad); if($tamanho < 1) { $fp = fopen($file_cad, "r+"); // abre o arquivo para escrita } else { $fp = fopen($file_cad, "a+"); // abre o arquivo para escrita } $cadastro ="$nome]["; $cadastro.="$email]["; $cadastro.="$chave][\n"; fputs($fp, $cadastro); //envia o cadastro fclose($fp); // fecha o arquivo $chave++; $config= "<?php\n"; $config.="\$password='$password';\n"; $config.="\$file_cad='$file_cad';\n"; $config.="\$url='$url';\n"; $config.="\$nome_ad='$nome_ad';\n"; $config.="\$mail_ad='$mail_ad';\n"; $config.="\$chave='$chave';\n"; $config.="?>"; $fp=fopen("config.php", "w"); // abre o arquivo para escrita fputs($fp, $config); //envia as configurações para o arquivo fclose($fp); // fecha o arquivo?><HTML><HEAD> <TITLE>CADASTRO</TITLE><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD><BODY BGCOLOR=#FFFFFF><font color="#CCCCCC"></font> <p align="justify"> <font color="#006699" size="2" face="Verdana, Arial, Helvetica, sans-serif">Seu E-mail foi cadastrado com sucesso! Obrigado.<br> <font size="1">Em breve você vai começar a receber nossos e-mails informativos.<br> </font></font> </p></BODY></HTML><?php}else{?><HTML><HEAD> <TITLE>CADASTRO</TITLE></HEAD><BODY BGCOLOR=#FFFFFF><body link="#006699" vlink="#006699" alink="#006699" scroll="no"><div align="center"> <font color="#006699" size="2" face="Verdana, Arial, Helvetica, sans-serif"><img src="../imagens/seta.jpg">Cadastre-se e receba nossas novidades! </font><font color="#006699" size="2" face="Verdana, Arial, Helvetica, sans-serif"> <form method=post action="cadastrar.php"> Nome <input type="text "name="nome" SIZE=20> <BR> E-mail <input type="text" name="email" size=20> <BR> <input type="hidden" name="tela" value="2"> <INPUT TYPE="submit" VALUE="Cadastrar"></form></font><?php echo "<font color=red>$erro</font>"; ?> </BODY></HTML><?php}?>E ainda tem o cadastro php, o config.php e o administrador.php!Acho que o erro não é no código, porque funciona no servidor!!!mas no meu computador ele tá fazendo gracinha! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 Error404 Postado Agosto 11, 2004 Denunciar Share Postado Agosto 11, 2004 É o register_globals, como eu suspeitava...Funciona no seu servidor porque o register_globals dele deve estar ativado.Mas o register_globals ligado pode gerar uma série de problemas que acabam levando à falta de segurança do seu site, facilitando a injeção de códigos e outros problemas.Então, faça o seguinte, cara: sempre que você for pegar o valor de uma variável que veio de um form que usa POST, não use $variavel, use $_POST['variavel'], se o form usar GET, use $_GET['variavel'].Isso deve fazer com que o seu código funcione em servidores com o register_globals ON e OFF... Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 allanlf Postado Agosto 13, 2004 Autor Denunciar Share Postado Agosto 13, 2004 Cara muito obrigado...mas eu estou iniciando agora em pHP e sou meio leigo no assunto!teriac como você me dar um exemplo do que eu tenho que mudar no código que eu postei acima?Valeu hem!!! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 ppgsalomao Postado Agosto 13, 2004 Denunciar Share Postado Agosto 13, 2004 Exemplo:Se você no formulário tem o campo "nome".No caso, que o register_globals tah off, para recebêlo no PHP, é só você colocar assim oh:$_POST['nome']Pro caso do método do formulário ser POST e:$_GET['nome']Pro caso do método do formulário ser GET.Ou simplismente coloca no topo do código PHP assim oh:foreach ($_POST as $campo => $valor) { $$campo = strip_tags($valor); } Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 allanlf Postado Agosto 13, 2004 Autor Denunciar Share Postado Agosto 13, 2004 então o que era assim: $cadastro ="$nome][";fica assim: $cadastro =_POST['nome]";certo? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 taudujas Postado Agosto 13, 2004 Denunciar Share Postado Agosto 13, 2004 então o que era assim: $cadastro ="$nome][";fica assim: $cadastro =_POST['nome]";certo? Ficaria assim Alan: $cadastro = "$_POST['nome']"; Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 julioromano Postado Agosto 13, 2004 Denunciar Share Postado Agosto 13, 2004 Ae Allan!Faz assim cara:o q era assim: $cadastro ="$nome]["; $cadastro.="$email]["; $cadastro.="$chave][\n"; fica assim: $cadastro ="$_POST['nome'] \n"; $cadastro.="$_POST['email'] \n"; $cadastro.="$_POST['chave'] \n"; entendeu?Espero ter ajudado!qualquer coisa posta ae!AbraçoJulio Romano Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 allanlf Postado Agosto 13, 2004 Autor Denunciar Share Postado Agosto 13, 2004 ok.estou começando a entender!Mas fiz as auterações que o Julio me disse e deu esse erro:Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in c:\arquivos de programas\easyphp1-7\www\nesw\cadastrar.php on line 77e a linha 77 é: $cadastro ="$_POST['nome'] \n";o que pode ser??? Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 julioromano Postado Agosto 13, 2004 Denunciar Share Postado Agosto 13, 2004 ae o código arrumado allan: <?php include('config.php'); function verifica_mail($mail) { if (strpos ($mail, "@") == 0) { return true; } list($user,$domain)=split("@",$mail,2); if (checkdnsrr($domain,"MX")) { return false; } else { return true; } } if(@$_POST['tela'] == "2") { $n_erros = 0; $erro = " "; if(empty($email)) { $erro.= "Obrigatório digitar o e-mail.<br>"; $n_erros++; } elseif (verifica_mail($email)) { $erro.= "Confira o e-mail e tente novamente.<br>"; $n_erros++; } if(empty($nome)) { $erro.= "Obrigatório digitar o nome.<br>"; $n_erros++; } }//if($tela==2) //if (!empty($nome)) if(@$_POST['tela'] == 2 and $n_erros == 0) { $tamanho = filesize($file_cad); if($tamanho < 1) { $fp = fopen($file_cad, "r+"); // abre o arquivo para escrita } else { $fp = fopen($file_cad, "a+"); // abre o arquivo para escrita } $cadastro ="$nome]["; $cadastro.="$email]["; $cadastro.="$chave][\n"; fputs($fp, $cadastro); //envia o cadastro fclose($fp); // fecha o arquivo $chave++; $config= "<?php\n"; $config.="\$password='$password';\n"; $config.="\$file_cad='$file_cad';\n"; $config.="\$url='$url';\n"; $config.="\$nome_ad='$nome_ad';\n"; $config.="\$mail_ad='$mail_ad';\n"; $config.="\$chave='$chave';\n"; $config.="?>"; $fp=fopen("config.php", "w"); // abre o arquivo para escrita fputs($fp, $config); //envia as configurações para o arquivo fclose($fp); // fecha o arquivo ?> <HTML> <HEAD> <TITLE>CADASTRO</TITLE><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"></HEAD> <BODY BGCOLOR=#FFFFFF> <font color="#CCCCCC"></font> <p align="justify"> <font color="#006699" size="2" face="Verdana, Arial, Helvetica, sans-serif">Seu E-mail foi cadastrado com sucesso! Obrigado.<br> <font size="1">Em breve você vai começar a receber nossos e-mails informativos.<br> </font></font> </p> </BODY> </HTML> <?php } else { ?> <HTML> <HEAD> <TITLE>CADASTRO</TITLE></HEAD> <BODY BGCOLOR=#FFFFFF><body link="#006699" vlink="#006699" alink="#006699" scroll="no"><div align="center"> <font color="#006699" size="2" face="Verdana, Arial, Helvetica, sans-serif"><img src="../imagens/seta.jpg">Cadastre-se e receba nossas novidades! </font><font color="#006699" size="2" face="Verdana, Arial, Helvetica, sans-serif"> <form method=post action=""> Nome <input type="text "name="nome" SIZE=20> <BR> E-mail <input type="text" name="email" size=20> <BR> <input type="hidden" name="tela" value="2"> <INPUT TYPE="submit" VALUE="Cadastrar"> </form> </font><?php echo "<font color=red>".@$_POST['erro']."</font>"; ?> </BODY> </HTML> <?php } ?> Espero ter ajudadoqualquer coisa posta ae!AbraçoJulio Romano Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 allanlf Postado Agosto 13, 2004 Autor Denunciar Share Postado Agosto 13, 2004 valeu cara!brigadão hem! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
allanlf
instalei o EasyPHP na minha máquina...
já coloquei o meu site dentro da pasta www, só que quando eu acesso ele, o que é em php dá um monte e erro!
ainda não mexi no tal de IIS para rodar PHP, tenho configurá-lo?
como?
Meu windwos é 2000!
Link para o comentário
Compartilhar em outros sites
15 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.