Preciso de ajuda em código simples php

15 respostas
T

Fiz um código PHP + HTML experimental no NetBeans, mas acho que estou me perdendo nas aberturas das tags php.

O nome do arquivo é index.php

ele nao faz o que eu quero

<?

$msgerr="";

if(isset ($_REQUEST['login']))
    {
        $email = $_REQUEST['email'];
                if($email=="")        {
            
                $msgerr="Digite dado corretamente";
        }        
        else
        {
            header("Localização:principal.php");
        }
    }

?>

<form action="index.php" method="POST">

        <input type="hidden" name="login" value="sim">

        Email <br> <input type="text" name="email">

        <br><br>

        <? echo"$msgerr" ?>
        <br><br>

        <input type="submit" value="Login">

    </form>

15 Respostas

S

eu sou da opinião que devias usar o
<?php ?> em vês de <? ?>.

pelo que eu sei, no php podemos delimitar o codigo em php de diversas formas, mas apenas a forma standard ( padrão) é o <?php ?> que todos os servidores web que vão interpretar o codigo php conhecem esta forma padrão

duduribeiro
header("Localização:principal.php");
tem q ser
header("Location: principal.php");
T

É, peguei de um site que traduziu o código, zuado demais rs

Agora acho que minha dúvida nao é TÃO simples assim:

tenho 3 arquivos índex,executa e conecta)

index = página inicial

conecta = apenas faz a conexão com o bd

executa - apenas possue uma função que retorna o resultado dessa pesquisa

vou postar os 3 arquivos aqui, mas o erro está no arquivo index, no momento que eu chamo a função do arquivo executa.

INDEX :
<?php

    require_once("executar.php");

    $query = "SELECT * FROM TABELA WHERE SENHA = senha1";
    
    $result = executar($query1); // erro aqui

    $row = pg_fetch_assoc($result);

    echo "${ROW['nome']}";

?>

CONECTA:

<?php

    $conectabd = pg_connect("dbname=teste  port=5432 host=localhost user=postgres password=postgres");

    if ($conectabd) {
        echo "Conectado com: " . pg_host($conectabd) . "<br/> ";
     }
     else {
          echo pg_last_error($conectabd);
          exit;
     }

?>

EXECUTA:

<?php

    function executar($Sql){

              $Resultado = pg_query($conectabd,$Sql);
              pg_close($conectabd);
              return $Resultado;
     }

?>

Na página, ele mostra um erro na chamada da função, estou achando que é problema na String $conectabd

duduribeiro

Posta o erro ai…

T

Fatal error: Call to undefined function pg_query() in C:\xampp\htdocs\teste\executar.php on line 5

edu_merckx

qual a versão do php você está usando?

de acordo com o php.net, esta função está disponível apenas para funções iguais ou superiores que 4.2

http://br2.php.net/manual/pt_BR/function.pg-query.php

duduribeiro

tenta usar

no lugar de

T

Preciso ver qual a versão, eu fiz a troca, deu o mesmo erro

duduribeiro

verifica se no php.ini esta ativo o modulo do postgres
procure pela seguinte linha:

e remove o ;

T

O código que eu coloquei aqui em cima, está funcionando perfeitamente em um pc com Linux.

Creio que seja alguma coisa que eu deixei de instalar, ou fiz errado.

edu_merckx

estranho… parece ser alguma conf específica… você adicionou a dll como o duduribeiro informou?

T

Não tive que alterar, já estava sem o ;

edu_merckx

se você executar só o conecta.php dá algum erro?

T

Eu arrumei meu erro, formatei a máquina (mas deixei uma copia do php.ini), depois da formatação substitui, e o erro apareceu de novo (Y)

Estou com um arquivo bem simples, assim:

<?php
$conecta = pg_connect("dbname = teste port = 5432 host = localhost user = <usuario> password = <senha>");
if($conecta) echo "OK";
?>

e o erro aparece Fatal error: Call to undefined function pg_connect() in C:\xampp\htdocs\teste\index.php on line 1

É problema na configuração do php.ini … ja descomentei a linha da extension php_pgsql, só que me lembro que tinha que mudar o caminho do extension_dir … por default ele veio assim : extension_dir = “C:\xampp\php\ext”

eu acho que esse caminho é o correto, na pasta C:php\ext também existem as extensões do php, mas quando altero para esse caminho c:php\ext também da esse erro

(ahh e o php.ini que eu alterei foi da pasta C:\xampp\php … existe outro arquivo php.ini na pasta C:\Program Files\PHP - nao sei se alterei o correto)

T

Consegui … a cada alteração eu preciso reiniciar o apache (nooob)

Criado 17 de dezembro de 2010
Ultima resposta 28 de dez. de 2010
Respostas 15
Participantes 4