Ir para conteúdo
Fórum Script Brasil
  • 0

por favor alguém me ajudaaaaaaaaa


Raphael Passos

Pergunta

gente eu to com um script que esta dando erro direto: notice: undefined variable, eu já pesquisei em varios lugares e não achei nada que me ajudasse :unsure: , por favor me ajudem *--*

há e esse script serve para modificar uns dados que a pessoa postou, se precisarem de mais informaçoes eu estarie passando. obrigado.

o meu script é esse(eu tirei tudo do meu site só deixei os formularios.):

<html>

<body>

<? if($_GET['funcao'] != "editar"){ ?>

<? if($_GET ['funcao'] != "detalhes") { ?>

<!--*******************INICIO--DO--FORMULÁRIO*********************-->

<div class=div9" align="center">

<form name="form1" id="form1" method="post" action="funcao.php?funcao=gravar">

Nome:<input type="text" name="nome" id="nome" size="50" />

<br />

Email:<input type="text" name="email" id="email" size="50" />

<br />

<br />

<textarea name="sobre" id="sobre" cols="50" rows="10">escreva aqui algumas coisas sobre você !!!</textarea>

<br />

<br />

<br />

<input type="submit" name="enviar" id="enviar" value="Enviar Dados" />

</form>

</div>

<!--*******************FIM--DO--FORMULÁRIO*********************-->

<!--*******************INICIO----DADOS----CADSTRADOS*********************-->

<h1 align="center"> Dados Cadastrados </h1>

<table name="tabela" id="tabela" cellspacing="7" cellpadding="3" align="center">

<tr bgcolor="#a0a0a0">

<td>Alterar</td>

<td>Detalhes</td>

<td>Nome:</td>

<td>Email:</td>

</tr>

<?

$sql = mysql_query("SELECT * FROM contatos");

while ($listar = mysql_fetch_array($sql)){

$id = $listar ['id];

$nome = $listar ['nome'];

$email = $listar ['email'];

?>

<tr bgcolor=#bbbbbb">

<td><a href="index.php?funcao=editar&id=<? $id ?>">Editar </a> </td>

<td align="center"> <a href="index.php?funcao=detalhes&id=<? echo $id ?>"> <img src="imagens/lupa.png"/> </a> </td>

<td><? echo $nome ?></td>

<td><? echo $email ?></td>

</tr>

<?

}

?>

</table>

<?

}else{

?>

<!--DETALHES-->

<?

$id = $_GET['id];

$sql = mysql_query("SELECT * FROM contatos WHERE id = '$id' ");

while ($listar = mysql_fetch_array($sql)){

$id = $listar ['id'];

$nome = $listar ['nome'];

$email = $listar ['email'];

$sobre = $listar ['sobre'];

}

?>

<strong>Nome:</strong><? echo $nome ?>

<br/>

<br/>

<br/>

<strong>Email:</strong><? echo $email ?>

<br/>

<br/>

<br/>

<strong>Sobre:</strong><? echo $sobre ?>

<?

}

?>

<!--*******************FIM----DADOS----CADSTRADOS*********************-->

<!--*******************INICIO----FUNCAO----EDITAR*********************-->

<? }else{ ?>

<?

$id = $_GET['id'];

$sql = mysql_query("SELECT * FROM contatos WHERE id = '$id' ");

while ($listar = mysql_fetch_array($sql)){

$id = $listar ['id'];

$nome = $listar ['nome'];

$email = $listar ['email'];

$sobre = $listar ['sobre'];

}

?>

<form name=form1" id="form1" method="post" action="funcao.php?funcao=editar&id=<? echo $id ?>">

Nome:<input type="text" name="nome" id="nome" size="50" value="<? echo $nome; ?>"/>

<br />

Email:<input type="text" name="email" id="email" size="50" value="<? echo $email; ?>"/>

<br />

<br />

<textarea name="sobre" id="sobre" cols="50" rows="10"><? echo $sobre; ?></textarea>

<br />

<br />

<br />

<input type="submit" name="enviar" id="enviar" value="Modificar" />

</form>

<?

}

?>

</body>

</html>

E ESTA A SEGUIR É A PAGINA QUE CUIDA DAS FUNCOES:

<?

include "conexao.php";

$nome = $_POST ['nome];

$email = $_POST ['email'];

$sobre = $_POST ['sobre'];

//** INSERT INTO ABAIXO *************************************

if($_GET['funcao'] == "gravar"){

$sql_gravar = mysql_query("INSERT INTO contatos (nome, email, sobre) value('$nome', '$email', '$sobre')");

header ("location: index.php");

}

//*************** UPDATE SET ***************************

if($_GET['funcao'] == "editar"){

$id = $_GET['id'];

$sql_editar = mysql_query("UPDATE contatos SET nome = '$nome', email = '$preço', sobre = '$sobre' WHERE id = '$id' ");

header("location: index.php");

}

?>

num sei se esta facil de entender mas é isso ai, ah e a conexao com o banco de dados já esta ok.

se der para vocês colarem este codigo no seu server e ver se conseguem arrumar eu agradeço muito

Link para o comentário
Compartilhar em outros sites

Posts Recomendados

  • 0

eu estou com duvidas a partir da funcao editar, porque aparece "notice: undefined variable" ,mas eu já defini as variaveis $nome, $email, $sobre.

Rapaz, meio poluído esse código seu aí hein....

Não entendi muito bem e você nem falou qual é o erro. Esclarece mais pra nós o seu problema.

abs.

eu estou com duvidas a partir da funcao editar, porque aparece "notice: undefined variable" ,mas eu já defini as variaveis $nome, $email, $sobre.

Link para o comentário
Compartilhar em outros sites

  • 0

Se os notices estiverem ativos, sempre que você tentar resgatar alguma coisa ou dar echo em uma variável que não existe, ele vai retornar isto, neste caso, em vez de usar:

<? if($_GET['funcao'] != "editar"){ ?>
Você teria que usar:
<?
$funcao = (isset($_GET['funcao']))?$_GET['funcao']:'';
if($funcao != "editar"){ ?>

Só que vai ter que fazer isto em todo o script ou desabilitar os notices.

Link para o comentário
Compartilhar em outros sites

  • 0
Se os notices estiverem ativos, sempre que você tentar resgatar alguma coisa ou dar echo em uma variável que não existe, ele vai retornar isto, neste caso, em vez de usar:

<? if($_GET['funcao'] != "editar"){ ?>
Você teria que usar:
<?
$funcao = (isset($_GET['funcao']))?$_GET['funcao']:'';
if($funcao != "editar"){ ?>

Só que vai ter que fazer isto em todo o script ou desabilitar os notices.

valeu mesmo cara, mas tipo: eu quero que a funcao editar coloque as informacoes que já estavam preenchidas antes dento dos inputs num sei se me entende, com eu faço isso?

no caso quando eu clico em editar dentro dos inputs e do textarea aparece que deu erro nas seguintes linhas: 1 , 3 , 6, ta dando o erro undefined variable

<form name="form1" id="form1" method="post" action="funcao.php?funcao=editar&id=<? echo $id ?>">

1 - Nome:<input type="text" name="nome" id="nome" size="50" value="<? echo $nome; ?>"/>

2 - <br />

3 - Email:<input type="text" name="email" id="email" size="50" value="<? echo $email; ?>"/>

4 - <br />

5 - <br />

6 - <textarea name="sobre" id="sobre" cols="50" rows="10"><? echo $sobre; ?></textarea>

7 - <br />

8 - <br />

9 - <br />

10 - <input type="submit" name="enviar" id="enviar" value="Modificar" />

11 -

12 - </form>

Editado por Raphael Passos
Link para o comentário
Compartilhar em outros sites

  • 0

Vamos lá de novo, se você tentar fazer qualquer ação com uma variável que não exista, vai retornar este erro, logo, se você está tendo ele é porque as variáveis não existem, use o isset conforme o exemplo para contornar ou desabilite os notices.

Link para o comentário
Compartilhar em outros sites

  • 0
Vamos lá de novo, se você tentar fazer qualquer ação com uma variável que não exista, vai retornar este erro, logo, se você está tendo ele é porque as variáveis não existem, use o isset conforme o exemplo para contornar ou desabilite os notices.

então cara as variaveis estao definidas:

<!--*******************INICIO----FUNCAO----EDITAR*********************-->

<? }else{ ?>

<?

$id = $_GET['id'];

$sql = mysql_query("SELECT * FROM contatos WHERE id = '$id' ");

while ($listar = mysql_fetch_array($sql)){

$id = $listar ['id'];

$nome = $listar ['nome']; <---ELAS ESTAO DEFINIDAS AQUI

$email = $listar ['email']; <---AQUI

$sobre = $listar ['sobre']; <---E AQUI

}

?>

<form name="form1" id="form1" method="post" action="funcao.php?funcao=editar&id=<? echo $id ?>">

Nome:<input type="text" name="nome" id="nome" size="50" value="<? echo $nome; ?>"/> <---E MESMO ASSIM DE ESSE ERRO AQUI

<br />

Email:<input type="text" name="email" id="email" size="50" value="<? echo $email; ?>"/> <---AQUI

<br />

<br />

<textarea name="sobre" id="sobre" cols="50" rows="10"><? echo $sobre; ?></textarea> <---E AQUI

<br />

<br />

<br />

<input type="submit" name="enviar" id="enviar" value="Modificar" />

</form>

<?

}

?>

Link para o comentário
Compartilhar em outros sites

  • 0

Cara, vou te ensinar a pescar e não te dar o peixe.

index.php

1 - vamos lá, vamos montar um formulário:

<form method=post>
<input type="text" name="nome"> insira seu nome
<input type="submit" name="postar" value="cadastrar">
</form>
//beleza né? note que não tem nenhum action="" no formulário, vamos fazer o insert no banco
<?php

if($_POST['postar']) { //se o botão cadastrar for submito, então

$nome = $_POST['nome'] // recupero o que foi postado

$sql = "insert into tabela (nome) values ('".$nome."')";
$res = mysql_query($sql) or die (mysql_error()); //caso haja erros no insert.
if($res) {
  echo "legal, gravou no banco";
}
?>
2 - Vamos listar embaixo os dados já cadastrados;
<table>
 <tr>
  <td> nome </td>
  <td> alterar </td>
  <td> excluir </td>
</tr>
<tr>
//beleza, já criamos o cabeçalho em html, vamos ao codigo php
<?php
$res = mysql_query("select nome from tabela") or die (mysql_error());
while($row = mysql_fetch_array($res)) {

echo "<td> ".$row['nome']." </td>";
echo "<td> <a href=?action=alterar&nome=".$row['nome']."> alterar </a> </td>"
echo "<td> <a href=?action=excluir&nome=".$row['nome']."> excluir</a> </td>"

}
?>
</tr>
</table>
Agora é só pegar os ACTION como parametros por GET;
<?php

if(isset($_GET["action"]))  {
                
                switch ($_GET["action"]) {
                
                    case "alterar": { //codigo para alterar; break}
                                        case "excluir": { //codigo para excluir; break}
     }
}

?>

Entendeu?

Editado por Ricardo T. do Prado
Link para o comentário
Compartilhar em outros sites

  • 0
Cara, vou te ensinar a pescar e não te dar o peixe.

index.php

1 - vamos lá, vamos montar um formulário:

<form method=post>
<input type="text" name="nome"> insira seu nome
<input type="submit" name="postar" value="cadastrar">
</form>
//beleza né? note que não tem nenhum action="" no formulário, vamos fazer o insert no banco
<?php

if($_POST['postar']) { //se o botão cadastrar for submito, então

$nome = $_POST['nome'] // recupero o que foi postado

$sql = "insert into tabela (nome) values ('".$nome."')";
$res = mysql_query($sql) or die (mysql_error()); //caso haja erros no insert.
if($res) {
  echo "legal, gravou no banco";
}
?>
2 - Vamos listar embaixo os dados já cadastrados;
<table>
 <tr>
  <td> nome </td>
  <td> alterar </td>
  <td> excluir </td>
</tr>
<tr>
//beleza, já criamos o cabeçalho em html, vamos ao codigo php
<?php
$res = mysql_query("select nome from tabela") or die (mysql_error());
while($row = mysql_fetch_array($res)) {

echo "<td> ".$row['nome']." </td>";
echo "<td> <a href=?action=alterar&nome=".$row['nome']."> alterar </a> </td>"
echo "<td> <a href=?action=excluir&nome=".$row['nome']."> excluir</a> </td>"

}
?>
</tr>
</table>
Agora é só pegar os ACTION como parametros por GET;
<?php

if(isset($_GET["action"]))  {
                
                switch ($_GET["action"]) {
                
                    case "alterar": { //codigo para alterar; break}
                                        case "excluir": { //codigo para excluir; break}
     }
}

?>

Entendeu?

entendi algumas partes pois sou iniciante, e no meu curso este é um exercicio que tenho que entregar . não entendi este switch no final, e esses pontos servem para concatenar é? SE PUDER me explicar com mais detalhes, agradeço muitoo.

Link para o comentário
Compartilhar em outros sites

  • 0
Cara, vou te ensinar a pescar e não te dar o peixe.

index.php

1 - vamos lá, vamos montar um formulário:

<form method=post>
<input type="text" name="nome"> insira seu nome
<input type="submit" name="postar" value="cadastrar">
</form>
//beleza né? note que não tem nenhum action="" no formulário, vamos fazer o insert no banco
<?php

if($_POST['postar']) { //se o botão cadastrar for submito, então

$nome = $_POST['nome'] // recupero o que foi postado

$sql = "insert into tabela (nome) values ('".$nome."')";
$res = mysql_query($sql) or die (mysql_error()); //caso haja erros no insert.
if($res) {
  echo "legal, gravou no banco";
}
?>
2 - Vamos listar embaixo os dados já cadastrados;
<table>
 <tr>
  <td> nome </td>
  <td> alterar </td>
  <td> excluir </td>
</tr>
<tr>
//beleza, já criamos o cabeçalho em html, vamos ao codigo php
<?php
$res = mysql_query("select nome from tabela") or die (mysql_error());
while($row = mysql_fetch_array($res)) {

echo "<td> ".$row['nome']." </td>";
echo "<td> <a href=?action=alterar&nome=".$row['nome']."> alterar </a> </td>"
echo "<td> <a href=?action=excluir&nome=".$row['nome']."> excluir</a> </td>"

}
?>
</tr>
</table>
Agora é só pegar os ACTION como parametros por GET;
<?php

if(isset($_GET["action"]))  {
                
                switch ($_GET["action"]) {
                
                    case "alterar": { //codigo para alterar; break}
                                        case "excluir": { //codigo para excluir; break}
     }
}

?>
Entendeu?
entendi algumas partes pois sou iniciante, e no meu curso este é um exercicio que tenho que entregar . não entendi este switch no final, e apartir disso não entendi mais nada:
echo "<td> ".$row['nome']." </td>";
echo "<td> <a href=?action=alterar&nome=".$row['nome']."> alterar </a> </td>"
echo "<td> <a href=?action=excluir&nome=".$row['nome']."> excluir</a> </td>"

}
?>
</tr>
</table>
Agora é só pegar os ACTION como parametros por GET;
<?php

if(isset($_GET["action"]))  {
                
                switch ($_GET["action"]) {
                
                    case "alterar": { //codigo para alterar; break}
                                        case "excluir": { //codigo para excluir; break}
     }
}

?>

SE PUDER me explicar com mais detalhes, agradeço muitoo.

Editado por Raphael Passos
Link para o comentário
Compartilhar em outros sites

  • 0

Rapahel,

O Switch funciona como um IF melhorado, seria algo para substituir isso

if($_GET['funcao'] != "editar"){ //bla bla bla}
Ao invés de fazer vários IF's, ex:
if($_GET['funcao'] != "editar")
if($_GET['funcao'] != "excluir")
if($_GET['funcao'] != "adicionar") Você chama um Switch que é mais rápido e prático, tipo
switch ($_GET["action"]) {
                
                    case "alterar": { //codigo para alterar; break}
                    case "excluir": { //codigo para excluir; break}
     }

entendeu?

Link para o comentário
Compartilhar em outros sites

  • 0
Rapahel,

O Switch funciona como um IF melhorado, seria algo para substituir isso

if($_GET['funcao'] != "editar"){ //bla bla bla}
Ao invés de fazer vários IF's, ex:
if($_GET['funcao'] != "editar")
if($_GET['funcao'] != "excluir")
if($_GET['funcao'] != "adicionar") Você chama um Switch que é mais rápido e prático, tipo
switch ($_GET["action"]) {
                
                    case "alterar": { //codigo para alterar; break}
                    case "excluir": { //codigo para excluir; break}
     }

entendeu?

Sim. MUITO OBRIGADO. :rolleyes: :rolleyes: :rolleyes: :rolleyes:

Editado por Raphael Passos
Link para o comentário
Compartilhar em outros sites

  • 0

o switch e os cases facilitam quando você deve executar uma série de comandos dependendo do valor de uma variável. Ao invés de fazer vários if() aninhados, um switch torna o código mais compacto e fácil de se entender.

Quando o conteúdo do case é executado, ele segue e executa o conteúdo dos cases seguintes. É pra isso que serve o break(): para parar a execução. Quando ele é atingido, a execução sai do switch e continua no resto do código.

Link para o comentário
Compartilhar em outros sites

  • 0

Amigo, segue um exemplo que eu uso.

<?php 
    
        $pk = $_GET['key']; //var key global para os actions
        
        if(isset($_GET["action"]))  {
                
                switch ($_GET["action"]) {
                
                    case "new": {
    
                        createFormInsert(    $tabela = "usuarios"
                                        
                                            ,$fields = array(
                                                "nome"=>"text",
                                                "email"=>"text",
                                                "login"=>"text",
                                                "senha"=>"password",
                                                "foto"=>"file",
                                                "ip, '".$_SERVER['REMOTE_ADDR']."'"=>"hidden"
                                            )
                                        
                                        ,$validaPost = true
                                        ,$validaFiles = true
                        );
                        break;
                    }
                    
                    case "edit": {
            
                        createFormEdit (    $tabela = "usuarios", 
                                        $fields  = array(
                                            "nome"=>"text",
                                            "email"=>"text",
                                            "login"=>"text",
                                            "senha"=>"password",
                                            "foto"=>"file",
                                            "ativo, situação, idstatus, status, status"=>"select" // 1 - fieldName => 2 - rotulo => 3 - chave => 4 - descricao => 5 - tabelaAux
                                            ,"ip, '".$_SERVER['REMOTE_ADDR']."'"=>"hidden"
                                        ), 
                                        $validaPost = true, 
                                        $validaFiles = true,
                                        $key = "id", 
                                        $id = $pk);
                        break;
                    } 
                    
                    case "delete": {
                    
                     //deleteCommand("usuarios","id",$pk);
                        
                        break;
                    }
            }
    }
        
?>

Link para o comentário
Compartilhar em outros sites

  • 0

já FIZ TUDO ATE COLOQUEI O SWITCH, MAS QUANDO EU COLOCO O <? if(isset($_GET["funcao"])){ ?> PAGINA não APARECE, SENDO QUE TEM UM MONTE DE VARIAVEIS "FUNCAO" NA URL o que EU FAÇO, SE DER POR FAVOR COLOQUEM O SCRIPT LA DO TOPO DA PAGINA EM SEU SERVIDOR PRA TESTAR NEM Q LEVEM ALGUM TEMPO EU ESTAREI AQUI PARA QUALQER COISA QUE PRECISAR, OLHA ESTE É O CODIGO DE CONEXAO:

<?
$sql = mysql_connect("localhost", "root", "");
$bd = mysql_select_db("fale_conosco");
?>

AI É SO CRIAR O BD NO SEU PHP MY ADMIN SE DER AJUDEM AI SERIO mesmo

Link para o comentário
Compartilhar em outros sites

  • 0

já FIZ TUDO ATE COLOQUEI O SWITCH, MAS QUANDO EU COLOCO O <? if(isset($_GET["funcao"])){ ?> PAGINA não APARECE, SENDO QUE TEM UM MONTE DE VARIAVEIS "FUNCAO" NA URL o que EU FAÇO, SE DER POR FAVOR COLOQUEM O SCRIPT LA DO TOPO DA PAGINA EM SEU SERVIDOR PRA TESTAR NEM Q LEVEM ALGUM TEMPO EU ESTAREI AQUI PARA QUALQER COISA QUE PRECISAR, OLHA ESTE É O CODIGO DE CONEXAO:

<?
$sql = mysql_connect("localhost", "root", "");
$bd = mysql_select_db("fale_conosco");
?>

AI É SO CRIAR O BD NO SEU PHP MY ADMIN SE DER AJUDEM AI SERIO mesmo

Link para o comentário
Compartilhar em outros sites

  • 0

ok irei fazer do modo do post que você me indicou.

bom, a minha duvida é um erro que acontece no meu código, o servidor indica que há um erro: undefined variable , mas eu já fiz tudo o que vocês me indicaram, então resolvi pedir para que vocês colocassem o script em seus computadores para poder me ajudar.

{Eu irei Deixar as linhas que estão dando erro em um codebox ok?}

(obs: nome do banco de dados: fale_conosco

Nome Da Tabela: contatos

Nome Das Linhas Da Tabela: id(do tipo INT)

nome(do tipo varchar)

email(do tipo varchar)

sobre(do tipo long text) )

Abaixo Segue O Código:

Pagina Index:

<html>
<head><title>--=Home Page=--</title>
<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
<style type="text/css">
h1{color:purple;
}
</style>
</head>

<? include "conexao.php"; ?>

<body>

//as linhas abaixo estao dando erro também, não sei porque.


<? if($_GET['funcao'] != "editar"){ ?>


<? if($_GET ['funcao'] != "detalhes") { ?>

<div align="center" width="1000" height="199"><a href="index.php"><img src="imagens/logo.png" border="0"/></a></div>



<table bgcolor="aaaaaa" name="tabela1" id="tabela1" align="center" cellspacing="3" cellpadding="3" width="1000" border="0" style="color:white;">
<tr>
<td><a href="index.php">Home</a></td>
<td>Downloads</td>
<td>Contato</td>
<td>Trabalhe conosco</td>
<td>serviços</td>
</tr>



</table>



<h1 align="center" >Seja Bem-Vindo!!!</h1>
<br />
<br />
<br />
<p><h2><div align="center">Aqui em baixo Você digita Os Seus Dados</div></h2></p>
<br />
<br />

                                    <!--*******************INICIO--DO--FORMULÁRIO*********************-->
                    
<div class="div9" align="center">



<form name="form1" id="form1" method="post" action="funcao.php?funcao=gravar">
Nome:<input type="text" name="nome" id="nome" size="50" />
<br />
Email:<input type="text" name="email" id="email" size="50" />
<br />
<br />
<textarea name="sobre" id="sobre" cols="50" rows="10">escreva aqui algumas coisas sobre você !!!</textarea>
<br />
<br />
<br />
<input type="submit" name="enviar" id="enviar" value="Enviar Dados" />
</form>
</div>
<!--*******************FIM--DO--FORMULÁRIO*********************-->
                                                        
<!--*******************INICIO----DADOS----CADASTRADOS*********************-->

                                        
                                             <h1 align="center"> Dados Cadastrados </h1>

<table name="tabela" id="tabela" cellspacing="7" cellpadding="3" align="center">



<tr bgcolor="#a0a0a0">
    <td>Alterar</td>
    <td>Detalhes</td>
    <td>Nome:</td>
    <td>Email:</td>
</tr>

<?
    $sql = mysql_query("SELECT * FROM contatos");
    while ($listar = mysql_fetch_array($sql)){

    $id = $listar ['id'];
    $nome = $listar ['nome'];
    $email = $listar ['email'];
?>
<tr bgcolor="#bbbbbb">
    <td><a href="index.php?funcao=editar&id=<? $id ?>">Editar </a> </td>
    <td align="center"> <a href="index.php?funcao=detalhes&id=<? echo $id ?>"> <img src="imagens/lupa.png"/> </a> </td>
    <td><? echo $nome ?></td>
    <td><? echo $email ?></td>
</tr>
<?
}
?>
</table>
<?
}else{
?>
    <!--DETALHES-->

<?
    $id = $_GET['id'];
    $sql = mysql_query("SELECT * FROM contatos WHERE id = '$id' ");
    while ($listar = mysql_fetch_array($sql)){
    
    $id = $listar ['id'];
    $nome = $listar ['nome'];
    $email = $listar ['email'];
    $sobre = $listar ['sobre'];
    }
?>

<strong>Nome:</strong><? echo $nome ?>
<br/>
<br/>
<br/>
<strong>Email:</strong><? echo $email ?>
<br/>
<br/>
<br/>
<strong>Sobre:</strong><? echo $sobre ?>



<?
}
?>
<!--*******************FIM----DADOS----CADSTRADOS*********************-->
<br/>
<br/>
<br/>
<!--*******************INICIO----FUNCAO----EDITAR*********************-->


<?
    $id = $_GET['id'];
    $sql = mysql_query("SELECT * FROM contatos WHERE id = '$id' ");
    while ($listar = mysql_fetch_array($sql)){
    
     $id = $listar['id'];
    $nome = $listar['nome'];
    $email = $listar['email'];
    $sobre = $listar['sobre'];
    
    }
    
?>
            
<form name="form2" id="form2" method="post" action="funcao.php?funcao=editar&id=<? echo $id ?>">
// As tres linha de codigo a baixo são as benditas que estao dando erro!


Nome:<input type="text" name="nome" id="nome" size="50" value="<? echo $nome ?>"/>
<br />
Email:<input type="text" name="email" id="email" size="50" value="<? echo $email ?>"/>
<br />
<br />
<textarea name="sobre" id="sobre" cols="50" rows="10"><? echo $sobre ?></textarea>
<br />
<br />
<br />
<input type="submit" name="enviar" id="enviar" value="Modificar" />

</form>
<?
}
?>

</body>
</html>
Página que Cuida Das Funções(que tem a função de postar dados no banco de dados, e de alterar):
<?
    include "conexao.php";



    $nome = $_POST ['nome'];
    $email = $_POST ['email'];
    $sobre = $_POST ['sobre'];

    //**  INSERT INTO ABAIXO *************************************
    
    if($_GET['funcao'] == "gravar"){
    
    $sql_gravar = mysql_query("INSERT INTO contatos (nome, email, sobre) value ('$nome', '$email', '$sobre')");
    header ("location: index.php");
    }
    
    //*************** UPDATE SET ***************************

    if($_GET['funcao'] == "editar"){

    $id = $_GET['id'];
    $sql_editar = mysql_query("UPDATE contatos SET nome = '$nome', email = '$preço', sobre = '$sobre' WHERE id = '$id' ");
    
    
    header("location: index.php");
    };
?>
e aqui fica a pagina de conexão com o BD(Banco De Dados):
<?
$sql = mysql_connect("localhost", "root", "");
$bd = mysql_select_db("fale_conosco");
?>

Editado por Raphael Passos
Link para o comentário
Compartilhar em outros sites

  • 0

Cara, o erro Undefined Variable normalmente acompanha a linha em que ocorreu o erro, dai é só você olhar em que linha foi e ver qual variável não foi iniciada

para solucionar o problema, além dos exemplos já comentados no tópico:

Você pode sumir com o Notice utilizando um @ no início da linha em questão.

outra forma de sumir com os erros é atribuindo um valor qualquer a variável acima do trecho do erro, ex: $var = "";

outra forma poderia ser configurando o servidor para não exibir notices.

Link para o comentário
Compartilhar em outros sites

  • 0
Cara, o erro Undefined Variable normalmente acompanha a linha em que ocorreu o erro, dai é só você olhar em que linha foi e ver qual variável não foi iniciada

para solucionar o problema, além dos exemplos já comentados no tópico:

Você pode sumir com o Notice utilizando um @ no início da linha em questão.

outra forma de sumir com os erros é atribuindo um valor qualquer a variável acima do trecho do erro, ex: $var = "";

outra forma poderia ser configurando o servidor para não exibir notices.

mano, eu sei disso(muito obrigado por ter tentado me ajudar), mas o problema é que as variaveis já estao definidas na url como $_GET entende, ai eu tento dar um echo nessas variaveis e acontece este erro, :wacko: :unsure: :angry:

e se eu sumir os notices também não irao aparecer as variaveis em que eu dei o echo :/

Editado por Raphael Passos
Link para o comentário
Compartilhar em outros sites

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.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,2k
×
×
  • Criar Novo...