MySQL, PHP and HTML communication

0

Good night everyone, I already talked about this, but it seems that they are not understanding what I mean, so I'll see if I explain better: so far as I know, I did everything right, in my case I'm using XAMP, I have a mysql command, and I want to run the mysql command. I have a mysql command, but I can not get it to work. >

SQL:

CREATE TABLE 'clientes' (
'nome' VARCHAR( 60 ) NOT NULL ,
'email' VARCHAR( 60 ) NOT NULL ,
'sexo' VARCHAR( 10 ) NOT NULL ,
'ddd' INT( 2 ) ,
'telefone' INT( 8 ) ,
'endereço' VARCHAR( 70 ) NOT NULL ,
'cidade' VARCHAR( 20 ) NOT NULL ,
'estado' VARCHAR( 2 ) NOT NULL ,
'bairro' VARCHAR( 20 ) NOT NULL ,
'país' VARCHAR( 20 ) NOT NULL ,
'login' VARCHAR( 12 ) NOT NULL ,
'senha' VARCHAR( 12 ) NOT NULL ,
'news' VARCHAR( 8 ) ,
'id' INT( 200 ) AUTO_INCREMENT ,
UNIQUE (
'id' 
)
);

SCRIPT PHP:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php 
// RECEBENDO OS DADOS PREENCHIDOS DO FORMULÁRIO !
$nome   = $_POST ["nome"];  //atribuição do campo "nome" vindo do formulário para variavel  
$email  = $_POST ["email"]; //atribuição do campo "email" vindo do formulário para variavel
$ddd    = $_POST ["ddd"];   //atribuição do campo "ddd" vindo do formulário para variavel
$tel    = $_POST ["telefone"];  //atribuição do campo "telefone" vindo do formulário para variavel
$endereco   = $_POST ["endereco"];  //atribuição do campo "endereco" vindo do formulário para variavel
$cidade = $_POST ["cidade"];    //atribuição do campo "cidade" vindo do formulário para variavel
$estado = $_POST ["estado"];    //atribuição do campo "estado" vindo do formulário para variavel
$bairro = $_POST ["bairro"];    //atribuição do campo "bairro" vindo do formulário para variavel
$pais   = $_POST ["pais"];  //atribuição do campo "pais" vindo do formulário para variavel
$login  = $_POST ["login"]; //atribuição do campo "login" vindo do formulário para variavel
$senha  = $_POST ["senha"]; //atribuição do campo "senha" vindo do formulário para variavel
$news   = $_POST ["news"];  //atribuição do campo "news" vindo do formulário para variavel
$sexo   = $_POST ["sexo"];  //atribuição do campo "sexo" vindo do formulário para variavel
//Gravando no banco de dados !

//conectando com o localhost - mysql
$conexao = mysql_connect("localhost","root");
if (!$conexao)
    die ("Erro de conexão com localhost, o seguinte erro ocorreu -> ".mysql_error());
//conectando com a tabela do banco de dados
$banco = mysql_select_db("clientes",$conexao);
if (!$banco)
    die ("Erro de conexão com banco de dados, o seguinte erro ocorreu -> ".mysql_error());



$query = "INSERT INTO 'clientes' ( 'nome' , 'email' , 'sexo' , 'ddd' , 'telefone' , 'endereço' , 'cidade' , 'estado' , 'bairro' , 'país' , 'login' , 'senha' , 'news' , 'id' ) 
VALUES ('$nome', '$email', '$sexo', '$ddd', '$tel', '$endereco', '$cidade', '$estado', '$bairro', '$pais', '$login', '$senha', '$news', '')";

mysql_query($query,$conexao);

echo "Seu cadastro foi realizado com sucesso!<br>Agradecemos a atenção.";
?> 
</body>
</html>

HTML:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>CADASTRO DE CLIENTES COM BANCO DE DADOS E PHP</title>
<style type="text/css">
<!--
.style1 {
    color: #FF0000;
    font-size: x-small;
}
.style3 {color: #0000FF; font-size: x-small; }
-->
</style>
<!--
                        ##########  Créditos  ##########
                        #                                   #
                        #   Autor: Rodrigo Ramos e Taitsonn #
                        #                                   #
                        #   Nome do script:FormularioCliente#
                        #   Bonus: validaCampo              #
                        #                                   #
                        #                                   #
                        #####################################

-->
<script type="text/javascript">
function validaCampo()
{
if(document.cadastro.nome.value=="")
    {
    alert("O Campo nome é obrigatório!");
    return false;
    }
else
    if(document.cadastro.email.value=="")
    {
    alert("O Campo email é obrigatório!");
    return false;
    }
else
    if(document.cadastro.endereco.value=="")
    {
    alert("O Campo endereço é obrigatório!");
    return false;
    }
else
    if(document.cadastro.cidade.value=="")
    {
    alert("O Campo Cidade é obrigatório!");
    return false;
    }
else
    if(document.cadastro.estado.value=="")
    {
    alert("O Campo Estado é obrigatório!");
    return false;
    }
else
    if(document.cadastro.bairro.value=="")
    {
    alert("O Campo Bairro é obrigatório!");
    return false;
    }
else
    if(document.cadastro.pais.value=="")
    {
    alert("O Campo país é obrigatório!");
    return false;
    }
else
    if(document.cadastro.login.value=="")
    {
    alert("O Campo Login é obrigatório!");
    return false;
    }
else    
if(document.cadastro.senha.value=="")
    {
    alert("Digite uma senha!");
    return false;
    }
else
return true;
}
<!-- Fim do JavaScript que validará os campos obrigatórios! -->
</script>
</head>

<body>
<form id="cadastro" name="cadastro" method="post" action="cadastro.php" onsubmit="return validaCampo(); return false;">
  <table width="625" border="0">
    <tr>
      <td width="69">Nome:</td>
      <td width="546"><input name="nome" type="text" id="nome" size="70" maxlength="60" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Email:</td>
      <td><input name="email" type="text" id="email" size="70" maxlength="60" />
      <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Sexo:</td>
      <td><input name="sexo" type="radio" value="Masculino" checked="checked" />
        Masculino 
        <input name="sexo" type="radio" value="Feminino" />
        Feminino <span class="style1">*</span> </td>
    </tr>
    <tr>
      <td>DDD:</td>
      <td><input name="ddd" type="text" id="ddd" size="4" maxlength="2" />
      Telefone:
        <input name="telefone" type="text" id="telefone" />
        <span class="style3">Apenas n&uacute;meros</span> </td>
    </tr>
    <tr>
      <td>Endere&ccedil;o:</td>
      <td><input name="endereco" type="text" id="endereco" size="70" maxlength="70" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Cidade:</td>
      <td><input name="cidade" type="text" id="cidade" maxlength="20" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Estado:</td>
      <td><select name="estado" id="estado">
        <option>Selecione...</option>
        <option value="AC">AC</option>
        <option value="AL">AL</option>
        <option value="AP">AP</option>
        <option value="AM">AM</option>
        <option value="BA">BA</option>
        <option value="CE">CE</option>
        <option value="ES">ES</option>
        <option value="DF">DF</option>
        <option value="MA">MA</option>
        <option value="MT">MT</option>
        <option value="MS">MS</option>
        <option value="MG">MG</option>
        <option value="PA">PA</option>
        <option value="PB">PB</option>
        <option value="PR">PR</option>
        <option value="PE">PE</option>
        <option value="PI">PI</option>
        <option value="RJ">RJ</option>
        <option value="RN">RN</option>
        <option value="RS">RS</option>
        <option value="RO">RO</option>
        <option value="RR">RR</option>
        <option value="SC">SC</option>
        <option value="SP">SP</option>
        <option value="SE">SE</option>
        <option value="TO">TO</option>
          </select>
        <span class="style1">*      </span></td>
    </tr>
    <tr>
      <td>Bairro:</td>
      <td><input name="bairro" type="text" id="bairro" maxlength="20" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Pa&iacute;s:</td>
      <td><input name="pais" type="text" id="pais" maxlength="20" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Login:</td>
      <td><input name="login" type="text" id="login" maxlength="12" />
        <span class="style1">*</span></td>
    </tr>
    <tr>
      <td>Senha:</td>
      <td><input name="senha" type="password" id="senha" maxlength="12" />
          <span class="style1">*</span></td>
    </tr>
    <tr>
      <td colspan="2"><input name="news" type="checkbox" id="news" value="ATIVO" checked="checked" />
Desejo receber novidades e informa&ccedil;&otilde;es sobre o conte&uacute;do deste site. </td>
    </tr>
    <tr>
      <td colspan="2"><p>
        <input name="cadastrar" type="submit" id="cadastrar" value="Concluir meu Cadastro!" /> 
        <br />
          <input name="limpar" type="reset" id="limpar" value="Limpar Campos preenchidos!" />
          <br />
          <span class="style1">* Campos com * s&atilde;o obrigat&oacute;rios!          </span></p>
      <p>&nbsp; </p></td>
    </tr>
  </table>
</form>
</body>
</html>

I try to write and in the browser it just looks like this:

  mysql_select_db ("clients", $ connection); if (! $ bank) die ("Connection error with database, the following error occurred -> ".mysql_error ()); $ query=" INSERT INTO clientes ( nome , email , sexo , ddd , telefone , endereço , cidade ', estado , bairro , país , login , senha , news , id , %code% ) VALUES (' $ name ',' $ email ',' $ sex ',' $ ddd '$ tel', '$ address', '$ password', '$ news', '$', '$ city', '$ city', '$ city' "; mysql_query ($ query, $ connection); echo" Your registration was successful!   We appreciate your attention. ";? >

    
asked by anonymous 12.08.2018 / 23:56

2 answers

0

What may be causing the error is mysql_connect missing the password, hence the code drops in the condition of not being able to connect. The code does not have the keys delimiting what is to be executed then it will go through all the rest of the script generating the output that was informed. As the script.php file is with the html tags, from the error point down everything is printed as page content, which should not happen.

    
13.08.2018 / 12:52
0

Try to organize your code better, and whenever possible separate HTML from PHP .

Your problem with what you understand is focused on connecting to the database, I suggest making the following improvements in your code and testing:

SCRIPT PHP (save as script.php):

<?php 
    // RECEBENDO OS DADOS PREENCHIDOS DO FORMULÁRIO !
    $nome   = $_POST ["nome"];  //atribuição do campo "nome" vindo do formulário para variavel  
    $email  = $_POST ["email"]; //atribuição do campo "email" vindo do formulário para variavel
    $ddd    = $_POST ["ddd"];   //atribuição do campo "ddd" vindo do formulário para variavel
    $tel    = $_POST ["telefone"];  //atribuição do campo "telefone" vindo do formulário para variavel
    $endereco   = $_POST ["endereco"];  //atribuição do campo "endereco" vindo do formulário para variavel
    $cidade = $_POST ["cidade"];    //atribuição do campo "cidade" vindo do formulário para variavel
    $estado = $_POST ["estado"];    //atribuição do campo "estado" vindo do formulário para variavel
    $bairro = $_POST ["bairro"];    //atribuição do campo "bairro" vindo do formulário para variavel
    $pais   = $_POST ["pais"];  //atribuição do campo "pais" vindo do formulário para variavel
    $login  = $_POST ["login"]; //atribuição do campo "login" vindo do formulário para variavel
    $senha  = $_POST ["senha"]; //atribuição do campo "senha" vindo do formulário para variavel
    $news   = $_POST ["news"];  //atribuição do campo "news" vindo do formulário para variavel
    $sexo   = $_POST ["sexo"];  //atribuição do campo "sexo" vindo do formulário para variavel

    //conectando com o localhost - mysql
    $conexao = mysql_connect("localhost", "root", "");

    if(!$conexao) {
        die ("Erro de conexão com localhost, o seguinte erro ocorreu -> " . mysql_error());
    } else {
        //conectando com a tabela do banco de dados
        $banco = mysql_select_db("clientes", $conexao);
        if (!$banco) {
            die ("Erro de conexão com banco de dados, o seguinte erro ocorreu -> ".mysql_error());
        } else {
            $query = "INSERT INTO 'clientes' ( 'nome' , 'email' , 'sexo' , 'ddd' , 'telefone' , 'endereço' , 'cidade' , 'estado' , 'bairro' , 'país' , 'login' , 'senha' , 'news' , 'id' ) 
    VALUES ('$nome', '$email', '$sexo', '$ddd', '$tel', '$endereco', '$cidade', '$estado', '$bairro', '$pais', '$login', '$senha', '$news', '')";

            mysql_query($query, $conexao);

            echo "Seu cadastro foi realizado com sucesso!<br>Agradecemos a atenção.";
        }
    }
?>

Modifications:

  • Inform the connection password is white, for the root user (only precaution).
  • Under if conditions, use {} and else keys to determine what happens in each situation. Yes the die() function terminates script execution after reporting a message, but does not appear to be incorrect.

SCRIPT HTML (save as index.php or the name you want to receive the request):

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Untitled Document</title>
</head>

<body>
<?php
    include_once("script.php");
?>
</body>
</html>

This may not solve your problem, but it will certainly help you better see what is happening. Report is resolved.

    
15.08.2018 / 22:09