1. Este site usa cookies. Ao continuar a usar este site está a concordar com o nosso uso de cookies. Saber Mais.

Duvida PHP + MySQL

Discussão em 'Web Development' iniciada por tuniq, 5 de Outubro de 2008. (Respostas: 7; Visualizações: 919)

  1. tuniq

    tuniq What is folding?

    Boas,

    Estou a iniciar-me no PHP e surgiu-me um problema...
    Uso o site http://testes.esgaming-esports.com para testar os códigos.


    Num tutorial tenho o seguinte código:
    Ficheiro update.php


    Código:
    <?
    include("dbinfo.inc.php");
    mysql_connect(localhost,$username,$password);
    @mysql_select_db($database) or die( "Unable to select database");
    $query="SELECT * FROM contacts WHERE id='$id'";
    $result=mysql_query($query);
    $num=mysql_numrows($result); 
    mysql_close();
    
    $i=0;
    while ($i < $num) {
    $first=mysql_result($result,$i,"first");
    $last=mysql_result($result,$i,"last");
    $phone=mysql_result($result,$i,"phone");
    $mobile=mysql_result($result,$i,"mobile");
    $fax=mysql_result($result,$i,"fax");
    $email=mysql_result($result,$i,"email");
    $web=mysql_result($result,$i,"web");
    
    ?>
    <html>
    <form action="updated.php">
    <input type="hidden" name="ud_id" value="<? echo "$id"; ?>">
    First Name: <input type="text" name="ud_first" value="<? echo "$first"?>"><br>
    Last Name: <input type="text" name="ud_last" value="<? echo "$last"?>"><br>
    Phone Number: <input type="text" name="ud_phone" value="<? echo "$phone"?>"><br>
    Mobile Number: <input type="text" name="ud_mobile" value="<? echo "$mobile"?>"><br>
    Fax Number: <input type="text" name="ud_fax" value="<? echo "$fax"?>"><br>
    E-mail Address: <input type="text" name="ud_email" value="<? echo "$email"?>"><br>
    Web Address: <input type="text" name="ud_web" value="<? echo "$web"?>"><br>
    <input type="Submit" value="Update">
    </form>
    </html>
    
    <?
    ++$i;
    } 
    ?>
    Ficheiro updated.php

    Código:
    <?
    include("dbinfo.inc.php");
    mysql_connect(localhost,$username,$password);
    
    $query="UPDATE contacts SET first='$ud_first', last='$ud_last', phone='$ud_phone', mobile='$ud_mobile', fax='$ud_fax', email='$ud_email', web='$ud_web' WHERE id='$ud_id'";
    @mysql_select_db($database) or die( "Unable to select database");
    mysql_query($query);
    echo "Record Updated";
    mysql_close();
    ?>
    O problema é que quando vou a http://testes.esgaming-esports.com/update.php não aparece nada ... No dreamweaver aparece o form na parte do design mas no browser não (uso a parte do código mas vi na parte de design para confirmar que o form aparecia) ...

    Podem ver em http://testes.esgaming-esports.com/mostrar.php e em http://testes.esgaming-esports.com/mostrar_formatado.php a entrada que está na tabela que criei na base de dados e que está a funcionar ...

    cumps,
    tuniq
     
  2. D. Carreira

    D. Carreira Power Member

    Experimenta em todos os scripts que tens substituir "<?"por "<?php".

    Existem servidores que têm a opção das short-tags desactivadas (acho eu :cool: ).
     
  3. anjo2

    anjo2 Power Member

    PHP:
    ini_set('display_errors''1');
        
    error_reporting (E_ALL);
    Adiciona isto no inicio e percebes logo porquê. Já detectei pelo menos um erro e não é do "<?"
     
  4. tuniq

    tuniq What is folding?

    Thanks.. Isso realmente ajuda muito :D (não estou a ser ironico)

    Help :|

    PS: Isto que vêem são exercícios retirados de uns tutoriais para me introduzir ao PHP + MySQL ...


    cumps,
    tuniq
    :kfold:
     
    Última edição: 8 de Outubro de 2008
  5. anjo2

    anjo2 Power Member

    Eu sei que ajuda, por isso disse, quando dá um "fatal error" e o servidor tem o "display_errors" desligado, aparece a página a branco, assim mostra-te os warnings além do fatal error.

    Em 1º Lugar, um id deve ser chave, uma chave é unica e não nula, pelo que não se mete "unique" nem "not null".
    Em 2º Lugar, não definiste o que é o $id, provavelmente deve ser
    PHP:
    $id $_POST['id'];
    Mas para ver melhor o que recebes, e enquanto fazes os testes,
    PHP:
    print_r($_POST); print_r($_GET); print_r($_REFERRER);
     
  6. tuniq

    tuniq What is folding?

    Dizes que o id deve ser chave, uma chave é unica e não nula mas UNIQUE é "unica" em inglês .. Podes esplicar melhor sff ?

    Pus esse codigo no php mas continua a dar o erro do id não estar definido .. Já agora, o id defino como quê ? e o id_2 para que serve ?? E como o defino ?
     
  7. anjo2

    anjo2 Power Member

    Repara, se uma chave já é unica e não nula, porque definir como unica ou não nula? não faz sentido, apaga os indices e mete o id como chave.

    O código que te dei é php, é para te extrair os arrays de modo a saberes o que estão dentro deles.
     
  8. tuniq

    tuniq What is folding?

    O código que tou a falar é o do $id

    Como meto em chave ?
     

Partilhar esta Página