Ir para conteúdo

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

santans

erro de função não definida na hora de enviar as informações do formulario

Recommended Posts

Quando envio as informações do meu formulario de cadastro para o banco de dados do wapserver     phpMyadmin, é exibida na tela de carregamento e verificação de erros a seguinte mensagem:

( ! ) Fatal error: Uncaught Error: Call to undefined function mysql_connect() in C:\wamp64\www\cadastro\cadastrando.php on line 11
( ! ) Error: Call to undefined function mysql_connect() in C:\wamp64\www\cadastro\cadastrando.php on line 11
Call Stack
# Time Memory Function Location
1 0.0016 407112 {main}( ) ...\cadastrando.php:0

 

Já verifiquei a linha do código escrito não encontrei erro, mas como sou iniciante acho que posso ter errado, os dados inseridos no formulário e no código juntamente com o endereço correspondem com os do banco de dados.

 

Aqui esta uma copia do código do FORMULÁRIO:

<html>
    <head>
        <title>sistema de cadastro</title>
    </head>
    <body>
        <form name="signup" method="post" action="cadastrando.php">
            Nome:<input type="text" name="nome" />
            <br/>
            <br/>
            Sobrenome:<input type="text" name="sobrenome" />
            <br/>
            <br/>
            Estado:<input type="text" name="estado"/>
            <br/>
            <br/>
            Cidade:<input type="text" name="cidade"/>
            <br/>
            <br/>
            CEP:<input type="text" name="cep"/>
            <br/>
            <br/>
            Endereço:<input type="text" name="endereco"/>
            <br/>
            <br/>
            Nº:<input type="text" name="numero"/>
            <br/>
            <br/>
            E-mail:<input type="text" name="e-mail"/>
            <br/>
            <br/>
            Senha:<input type="password" name="senha"/>
            <br/>
            <br/>
            <input type="submit" value="cadastrar"/>
        </form>
    </body>
</html>

A copia do codigo do script de envio de dados ao servidor do myphpadmin:

<html>
    <head>
        <title>cadastrando...</title>
    </head>
    <body>
        <?php
            $host = "localhost";
            $user = "root";
            $pass = "6768";
            $banco = "cadastro";
            $conexao = mysql_connect($host, $user, $pass) or die(mysql_error());
            mysql_select_db($banco) or die(mysql_error());
        ?>

        <?php
            $nome=$_POST['nome'];
            $sobrenome=$_POST['sobrenome'];
            $estado=$_POST['estado'];
            $cidade=$_POST['cidade'];
            $cep=$_POST['cep'];
            $endereco=$_POST['endereco'];
            $numero=$_POST['numero'];
            $email=$_POST['email'];
            $senha=$_POST['senha'];
            $sql = mysql_query("INSERT INTO usuarios(nome, sobrenome, estado, cidade, cep, endereco, numero, email, senha) VALUES('$nome', '$sobrenome', '$estado', '$cidade', '$cep', '$endereco', '$numero', '$email', '$senha')");
        ?>
    </body>
</html>

Abaixo tem um anexo com um print nomes dos parâmetros  que foram definidos no phpmysql na tabela usuarios...

 

Por favor fique a vontade para mostrar exemplos e dizer o que esta errado.

 

Nota que não sei desenvolver muito bem ainda, todo o exemplo é bem vindo.

Compartilhar este post


Link para o post
Compartilhar em outros sites
4 horas atrás, navegantenarede disse:

Qual versão do PHP você está usando? A função mysql_connect só funciona até o PHP 5.

estou usando a ultima versão, quando escrevi o código segui os passos de um tutorial.

 

Há o que deve fazer para que funcione?

Compartilhar este post


Link para o post
Compartilhar em outros sites
3 minutos atrás, santans disse:

estou usando a ultima versão, quando escrevi o código segui os passos de um tutorial.

 

Há o que deve fazer para que funcione?

 

Esquecer o tutorial que viu e também

Usar mysqli ou melhor usar PDO.

Compartilhar este post


Link para o post
Compartilhar em outros sites
2 minutos atrás, Omar~ disse:

 

Esquecer o tutorial que viu e também

Usar mysqli ou melhor usar PDO.

<?php
$link = mysql_connect('HOST', 'BASE', 'SENHA');
if (!$link) {
    die('Erro ao conectar ao banco: ' . mysql_error());
}
echo 'Conectado com sucesso';
mysql_close($link);
?>

no caso um desses dois códigos

<?php
$mysqli_connection = new MySQLi('HOST', 'USUARIO', 'SENHA', 'BASE');
if($mysqli_connection->connect_error){
   echo "Desconectado! Erro: " . $mysqli_connection->connect_error;
}else{
   echo "Conectado!";
}
?>

?

Compartilhar este post


Link para o post
Compartilhar em outros sites

consegui conectar com o servidor

mas agora apareceu esse seguinte erro pra mim

 

Conectado! // 

( ! ) Notice: Undefined index: email in C:\wamp64\www\cadastro\cadastrando.php on line 33
Call Stack
# Time Memory Function Location
1 0.0013 407128 {main}( ) ...\cadastrando.php:0

 

( ! ) Fatal error: Uncaught Error: Call to undefined function mysql_query() in C:\wamp64\www\cadastro\cadastrando.php on line 35
( ! ) Error: Call to undefined function mysql_query() in C:\wamp64\www\cadastro\cadastrando.php on line 35
Call Stack
# Time Memory Function Location
1 0.0013 407128 {main}( ) ...\cadastrando.php:0

Compartilhar este post


Link para o post
Compartilhar em outros sites
1 hora atrás, santans disse:

consegui conectar com o servidor

mas agora apareceu esse seguinte erro pra mim

 

Conectado! // 

( ! ) Notice: Undefined index: email in C:\wamp64\www\cadastro\cadastrando.php on line 33
Call Stack
# Time Memory Function Location
1 0.0013 407128 {main}( ) ...\cadastrando.php:0

 

( ! ) Fatal error: Uncaught Error: Call to undefined function mysql_query() in C:\wamp64\www\cadastro\cadastrando.php on line 35
( ! ) Error: Call to undefined function mysql_query() in C:\wamp64\www\cadastro\cadastrando.php on line 35
Call Stack
# Time Memory Function Location
1 0.0013 407128 {main}( ) ...\cadastrando.php:0

O erro da linha 33 é que ele não encontrou o index 'email' dentro da variável $_POST.

Os outros 2 erro são porque você precisa alterar todo o código para usar somente PDO ou mysqli. Se não entende muito de orientação a objeto utilize o mysqli que funciona de forma procedural também.

 

https://imasters.com.br/back-end/como-atualizar-scripts-php-de-mysql-para-mysqli

 

Leia esse passo a passo que vai te ajudar

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vamos lá...

digamos assim:

mysql_connect('HOST', 'BASE', 'SENHA'); // Alerta dessa linha porque usa mysql

$email = $_POST['alguma_coisa'] ? $_POST['alguma_coisa'] : ''nada;

if ($email) { // <- Erro nessa linha mesmo que a var existe e possui um valor qualquer

}

Erro pelo fato que o código foi morto no momento do alerta cancelando todo restante das definições.

Mesmo que esse não é o motivo do erro (Linha 33), mas poderia ser pelo que disse acima...

 

Então vamos ao erro em questão dessa linha 33:

18 horas atrás, santans disse:

E-mail:<input type="text" name="e-mail"/>

 

18 horas atrás, santans disse:

$email=$_POST['email'];

 

name="e-mail" / $_POST['email']

Ou seja em nenhum momento o arquivo recebeu dados da array super global post como índice email e sim e-mail.

 

No mais a questão do banco de dados procure estudar a respeito pois existem muitos conteúdos (a maioria uma porcaria) mas existem conteúdos bons espalhados na web

Para lhe dar uma direção de começo sugiro que dê uma lida nesse tópico:

https://forum.imasters.com.br/topic/565800-crud-introdução-a-pdo/

 

No resto é pesquisar para aprender, e é de grande aproveito fazer algum curso com empresas sérias, mesmo que tenha que pagar alguns trocados por isso.

A melhor alternativa é procurar escolas/empresas que ensinam a arte de programar de forma correta.

 

Spoiler

Só por passa tempo pode se fazer a conexão com mysqli assim:


<?php
$conn = mysqli_connect('ip_do_banco', 'usuario', 'senha', 'banco_de_dados');
if (!$conn) {
    die('Erro na conexão: ' . mysqli_connect_error());
}
mysqli_query($conn, 'SET NAMES \'utf8\'');
// Código aqui....
mysqli_close($conn);

Entretanto devo ressaltar para usar PDO.

 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites
21 horas atrás, Omar~ disse:

Vamos lá...

digamos assim:

mysql_connect('HOST', 'BASE', 'SENHA'); // Alerta dessa linha porque usa mysql

$email = $_POST['alguma_coisa'] ? $_POST['alguma_coisa'] : ''nada;

if ($email) { // <- Erro nessa linha mesmo que a var existe e possui um valor qualquer

}

Erro pelo fato que o código foi morto no momento do alerta cancelando todo restante das definições.

Mesmo que esse não é o motivo do erro (Linha 33), mas poderia ser pelo que disse acima...

 

Então vamos ao erro em questão dessa linha 33:

 

 

name="e-mail" / $_POST['email']

Ou seja em nenhum momento o arquivo recebeu dados da array super global post como índice email e sim e-mail.

 

No mais a questão do banco de dados procure estudar a respeito pois existem muitos conteúdos (a maioria uma porcaria) mas existem conteúdos bons espalhados na web

Para lhe dar uma direção de começo sugiro que dê uma lida nesse tópico:

https://forum.imasters.com.br/topic/565800-crud-introdução-a-pdo/

 

No resto é pesquisar para aprender, e é de grande aproveito fazer algum curso com empresas sérias, mesmo que tenha que pagar alguns trocados por isso.

A melhor alternativa é procurar escolas/empresas que ensinam a arte de programar de forma correta.

 

  Mostrar conteúdo oculto

Só por passa tempo pode se fazer a conexão com mysqli assim:



<?php
$conn = mysqli_connect('ip_do_banco', 'usuario', 'senha', 'banco_de_dados');
if (!$conn) {
    die('Erro na conexão: ' . mysqli_connect_error());
}
mysqli_query($conn, 'SET NAMES \'utf8\'');
// Código aqui....
mysqli_close($conn);

Entretanto devo ressaltar para usar PDO.

 

 

ja conseguir fazer funcionar muito obrigado 

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por ILR master
      Fala galera, tudo bem?
       
      Tenho o seguinte codigo:
       
       class Data {
      public static function ExibirTempoDecorrido($date)
      {
          if(empty($date))
          {
              return "Informe a data";
          }
          $periodos = array("segundo", "minuto", "hora", "dia", "semana", "mês", "ano", "década");
          $duracao = array("60","60","24","7","4.35","12","10");
          $agora = time();
          $unix_data = strtotime($date);
          // check validity of date
          if(empty($unix_data))
          {  
              return "Bad date";
          }
          // is it future date or past date
          if($agora > $unix_data) 
          {  
              $diferenca     = $agora - $unix_data;
              $tempo         = "atrás";
          } 
          else 
          {
              $diferenca     = $unix_data - $agora;
              $tempo         = "agora";
          }
          for($j = 0; $diferenca >= $duracao[$j] && $j < count($duracao)-1; $j++) 
          {
              $diferenca /= $duracao[$j];
          }
          $diferenca = round($diferenca);
          if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
          return "$diferenca $periodos[$j] {$tempo}";
      }
      }
       
      Funciona redondinho se o valor retornado for de algumas horas, mas...
      Quando passa de dois meses, ele retorna a palavra mess. Deve ser por conta dessa linha
      if($diferenca != 1) 
          {
              $periodos[$j].= "s";
          }
       
      Quero que modre:
       
      2 meses atrás
      e não
      2 mess atrás.
       
      Espero que tenham entendido.
       
      Valeu
    • Por Carlos Web Soluções Web
      Olá...
      Estou tentando fazer o seguinte !!
      Listando dados em tabela !!
      Gostaria que....se na listagem houver 4 linhas...indepedente de seu número de ID, faça a listagem em ID ser em ordem 1 2 3 4 !!
      Exemplo...se tiver uma listagem de dados que está em ID 1 3 3...faça ficar 1 2 3 !!

       
      echo "<table class='tabela_dados' border='1'> <tr> <td>ID</td> <td>Nome Empresa</td> <td>Responsável</td> <td>Telefone 1</td> <td>Telefone 2</td> <td>E-mail 1</td> <td>E-mail 2</td> <td>Endereço</td> <td>CEP</td> <td>Bairro</td> <td>AÇÃO 1</td> <td>AÇÃO 2</td> </tr> "; $sql = "SELECT ID FROM usuarios_dados WHERE Usuario='$usuario'"; $result = $conn->query($sql); $num_rows = $result->num_rows; $Novo_ID = 1; for ($i = 0; $i < $num_rows; $i++) { $registro = $result -> fetch_row(); $sql2 = "UPDATE usuarios_dados SET ID='$Novo_ID' WHERE ID='$Novo_ID'"; $result2 = $conn->query($sql2); $Novo_ID++; } $sql = "SELECT * FROM usuarios_dados"; $result = $conn->query($sql); if ($result->num_rows > 0) { // output data of each row while($row = $result->fetch_assoc()) { echo "<tr> <td>$row[ID]</td> <td>$row[Nome_Empresa]</td> <td>$row[Responsavel]</td> <td>$row[Telefone_1]</td> <td>$row[Telefone_2]</td> <td>$row[Email_1]</td> <td>$row[Email_2]</td> <td>$row[Endereço]</td> <td>$row[CEP]</td> <td>$row[Bairro]</td> <td> <form method='post' action='Editar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='EDITAR'> </form> </td> <td> <form method='post' action='Deletar_Dados.php'> <input type='hidden' name='usuario' value='$usuario'> <input type='hidden' name='senha' value='$senha'> <input type='hidden' name='ID' value='$row[ID]'> <input type='submit' style='padding: 10px;' value='DELETAR'> </form> </td> </tr> "; } } else { echo "0 results"; } $conn->close();  
    • Por ILR master
      Boa tarde pessoal, tudo bem ?
       
      Eu uso o tinymce para cadastro de textos no meu siite, porém, quero fazer um sistema para que os colunistas possam fazer o próprio post.
      O problema do tinymce, é que ele mantém a formatação do texto copiado, como tamanho de fonts, negritos, etc... Quero que o usuário cole o texto e a própria textarea limpe a formatação para que ele formate como quiser.
       
      A pergunta é:
       
      O tinymce tem uma opção para desabilitar a formatação quando um texto é colocado?
      Tem alguma função via java ou php para retirar a formatação assim que o texto é colado?
      Ou é melhor usar um outro editor?
       
      Agradeço deste já.
    • Por Giovanird
      Olá a todos!
      Tenho uma pagina que possui uma DIV onde coloquei uma pagina PHP.
      Uso a função setInterval para atualizar a pagina inclusa dentro da DIV.
      O problema é que ao acessar o site , a DIV só me mostra a pagina inclusa somente quando completo o primeiro minuto.
      Preciso que a pagina inclusa já inicie carregada
       
      Meu código JavaScript e a DIV com a pagina PHP
       
      <script> function atualiza(){ var url = 'direita.php'; $.get(url, function(dataReturn) { $('#direita').html(dataReturn); }); } setInterval("atualiza()",60000); </script> <div> <span id="direita"></span> </div>  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.