meujovem 0 Denunciar post Postado Setembro 24, 2003 Caros Jovens Estou com problema nessa mensagem de erro: Notice: Undefined variable: codauto1 in c:\inetpub\wwwroot\autonet\detalhes.php on line 17 Esta é a linha 17 $sql = $sql . "WHERE codauto = '$codauto1' "; Antes os scripts funcionavam normalmente, depois que procisei trocar de máquina, pronto a minha vida mudou, essses codigos nao funcionam.. Antes eu usava o: pws, php e mysql ( funcionava normalmente ) hoje Trabalho com: IIS, PHP e MySQL Tenho um arquivo que chama uma tabela em DB, até ai tudo Bem, mas no link para expor os detalhes do produto, nao funciona... Veja uma parte do codigo do arquivo detalhes.php <?php//requer arquivo para conexão com o banco de dadosrequire("include/abreconexao.inc");// Cria a sentença SQL$sql = "SELECT * ";$sql = $sql . "FROM automoveis ";$sql = $sql . "WHERE codauto = '$codauto1' ";// Carrega os registros selecionados$rs = mysql_query($sql, $conexao) or die ("Não foi possível efetuar a consulta 2");$numReg = mysql_num_rows($rs);?> // aqui em baixo o código continua qualquer ajuda será bem vinda.. Grato.. meujovem Compartilhar este post Link para o post Compartilhar em outros sites
ualex 0 Denunciar post Postado Setembro 24, 2003 tal vez isso seja questão de configuração do php tenta usar(POST ou GET)$_POST[nome_variavel]dai se funciona se pode atualizar seus scripts ou mudar no php.ini Compartilhar este post Link para o post Compartilhar em outros sites
meujovem 0 Denunciar post Postado Setembro 25, 2003 Olá galera Segui a orientação de hinon nesse forum e resolvi meu problemas, mas valeu a dica de uatex. Apenas fiz isso da orientação dele: Verifique se no php.ini o register_globals está "on" ou "off" segue o link: http://www.imasters.com.br/forum/index.php...efined+variable Grato a todos e a hinon Compartilhar este post Link para o post Compartilhar em outros sites
ZehOliveira 0 Denunciar post Postado Setembro 25, 2003 O correto mesmo é você usar os arrays $_GET, $_POST, $_COOKIE, $_SESSIONS e por aí vai. Por que por padrão (questão de segurança) o PHP vem com a register_globals setada pra "off" e se você for hospedar um script em um servidor que esteja configurado dessa maneira seu script vai ter sérios problemas.Mas se você usar os arrays.. não vai ter problema nenhum mesmo a register globals estando em "on" ou "off".Você tem que simular ao máximo o ambiente de produção quando tá desenvolvendo alguma coisa.. estrutura de diretórios, configuração de servidores e etc! Pra evitar aqueles problemas de quando você muda o servidor "o site para de funcionar". Compartilhar este post Link para o post Compartilhar em outros sites
meujovem 0 Denunciar post Postado Setembro 25, 2003 ZeholiveiraRealmente você tem toda razao, apesar de o script estar funcionando aqui localmente na minha máquina, nao sei se esse php.ini o register_globals está "on" ou "off" no servidor que irei hospedar o site...Por isso gostaria de sua ajuda para configurar meus códigos utilizando os arrays $_GET, $_POST, $_COOKIE, $_SESSIONS Posso contar com a sua ajuda..???? Mas sou iniciante em php..Gratomeujovem Compartilhar este post Link para o post Compartilhar em outros sites
ZehOliveira 0 Denunciar post Postado Setembro 25, 2003 Lógico que é evidente que claro que pode contar.. Hehehe =)Basicamente todas as variáveis recuperadas por formulário ou pela query string você tem que usar o array com o método que está usando ($_GET ou $_POST).E quando for usar session, sempre use $_SESSION! Esqueca session_register e etc.. isso é das antigas Hehe! Basta fazer $_SESSION['foo'] = "bar"; pra gravar uma sessão...Vá tentando rodar seus scripts, consertando esses erros aos poucos... onde aparecer undefined variable é muito provável que você esteja usando uma variável vinda de um form sem usar os arrays "mágicos". Compartilhar este post Link para o post Compartilhar em outros sites
meujovem 0 Denunciar post Postado Setembro 26, 2003 Valeu zeholiveira Então vou te pedir sua ajuda.... Logo abaixo está uma parte do codigo de um arquivo: <?php//requer arquivo para conexão com o banco de dadosrequire("include/abreconexao.inc");// Cria a sentença SQL$sql = "SELECT * ";$sql = $sql . "FROM automoveis ";$sql = $sql . "WHERE codauto = '$codauto1' ";// Carrega os registros selecionados$rs = mysql_query($sql, $conexao) or die ("Não foi possível efetuar a consulta 2");$numReg = mysql_num_rows($rs);?> Como seria o código dessa linha usando array: $sql = $sql . "WHERE codauto = '$codauto1' "; No meu db uma das tabelas tem o seguinte campo: codauto Tenho um link onde chama o arquivo detalhes com o seguinte código: <a href="detalhes.php?codauto1=<?php echo $codauto; ?>"Como seria o código desse link acima usando array? O arquivo que carrega os registros tem também essa linha: $codauto = $linha ["codauto"];Como seria o código dessa linha acima usando array? Não sei se deu pra voce entender.. Eu estou impossibilitado de fazer ftp, por isso nao posso facilitar os arquivos completos, mas se você permitisse por e-mail eu te mandaria os arquivos completos... mas se puder me orientar com essas informações que apresentei eu ficarei muito grato... meujovem Compartilhar este post Link para o post Compartilhar em outros sites
mjs 0 Denunciar post Postado Setembro 26, 2003 Pelo que entendi você pode resolver o seu problema assim:<?php// Recupera a querystring enviada pelo browser$codauto1 = $_GET["$codauto"];//requer arquivo para conexão com o banco de dadosrequire("include/abreconexao.inc");// Cria a sentença SQL$sql = "SELECT * ";$sql = $sql . "FROM automoveis ";$sql = $sql . "WHERE codauto = '$codauto1' ";// Carrega os registros selecionados$rs = mysql_query($sql, $conexao) or die ("Não foi possível efetuar a consulta 2");$numReg = mysql_num_rows($rs);?>Isso deve resolver, basta recuperar o código enviado pelo $_GET atribuindo o valor para variável usada na busca no caso $codauto1Espero que seja isto..t+ Compartilhar este post Link para o post Compartilhar em outros sites
meujovem 0 Denunciar post Postado Outubro 1, 2003 Pelo que entendi você pode resolver o seu problema assim:<?php// Recupera a querystring enviada pelo browser$codauto1 = $_GET["$codauto"];//requer arquivo para conexão com o banco de dadosrequire("include/abreconexao.inc");// Cria a sentença SQL$sql = "SELECT * ";$sql = $sql . "FROM automoveis ";$sql = $sql . "WHERE codauto = '$codauto1' ";// Carrega os registros selecionados$rs = mysql_query($sql, $conexao) or die ("Não foi possível efetuar a consulta 2");$numReg = mysql_num_rows($rs);?>Isso deve resolver, basta recuperar o código enviado pelo $_GET atribuindo o valor para variável usada na busca no caso $codauto1Espero que seja isto..t+beleza msjE agora me resta a seguinte dúvida. como faço o seguinte link usando a array?<a href="detalhes.php?codauto1=<?php echo $codauto; ?>Fiz isso e não deu certo:<a href="detalhes.php?$codauto1=<?php echo $_GET["$codauto"]; ?>Alguma sugestão? onde estou errando?Grato Compartilhar este post Link para o post Compartilhar em outros sites
mjs 0 Denunciar post Postado Outubro 1, 2003 Tem que ser assim:<a href="detalhes.php?$codauto1=<?php echo $_GET["codauto"]; ?> :P Você tá recuperando um valor do GET e não a variável $codauto Compartilhar este post Link para o post Compartilhar em outros sites
meujovem 0 Denunciar post Postado Outubro 2, 2003 Olá meujovem mjsEu fiz o que você orientou mas nao deu...Veja bem, aqui está um teste, eu deixei as duas linhas// Recupera a querystring enviada pelo browser$codauto = $linha ["codauto"];$codauto1 = $_GET["$codauto"];// Cria a sentença SQL$sql = "SELECT * ";$sql = $sql . "FROM automoveis ";$sql = $sql . "WHERE codauto = '$codauto1' ";E aqui eu coloquei esses links:<a href="detalhes.php?codauto1=<?php echo $codauto; ?>" <a href="detalhes.php?$codauto1=<?php echo $_GET["codauto"]; ?>"O primeiro link funciona, mas não estou utilizando array, mas o segundo link nao funciona, aqui a mensagem de erro:Notice: Undefined variable: codauto1 in c:\inetpub\wwwroot\autonet\detalhes.php on line 17 Linha 17:$sql = $sql . "WHERE codauto = '$codauto1' "; Grato... Compartilhar este post Link para o post Compartilhar em outros sites
mjs 0 Denunciar post Postado Outubro 2, 2003 Fala meujovemO certo é assim:// Recupera a querystring enviada pelo browser$codauto = $linha ["codauto"];$codauto1 = $_GET["codauto"];// Cria a sentença SQL$sql = "SELECT * ";$sql = $sql . "FROM automoveis ";$sql = $sql . "WHERE codauto = '$codauto1' ";Quanto ao link (não tinha notado aquele $codauto1), faça assim:<a href="detalhes.php?codauto1=<?php echo $_GET["codauto"]; ?>"Uma pergunta esses códigos estão todos no mesmo arquivo? Certo? Qual o nome do arquivo? Compartilhar este post Link para o post Compartilhar em outros sites