Jump to content
GSilva1

Adaptando ciclo de insert para Select/Delete/Update

Recommended Posts

Bom Dia.

Será que alguém me pode ajudar? Na semana anterior estive com um professor a desenvolver um programa de insert, que também servirá para o Select/Delete/Update.

Mas estou “preso”, pois, ele disse-me que eu poderia adaptar o código para as outras três opções. Passado quase uma semana não consegui fazer nada, será que alguém me consegue ajudar vendo o meu código? 

 

Obrigado, Gonçalo Silva

    <?php
    $self = $_SERVER['PHP_SELF'];
    $host_name = "127.0.0.1";
    $database = "visteon";
    $username = "root";          
    $password = "";          
    $Tabela ="";

    try {
    $dbo = new PDO('mysql:host='.$host_name.';dbname='.$database, $username, $password);
    } catch (PDOException $e) {
    print "Error!: " . $e->getMessage() . "<br/>";
	die();
	}

	// Selecicionar Tabela

	if(!isset($_POST['submeterTabela']) && !isset($_POST['submeterDados'])) {
	
	$form ="<form action=\"$self\" method=\"post\">";
	
	$result = $dbo->query("SHOW TABLES");
	$form.= "<select name='Tabela' class='select_box'>";
	while ($row = $result->fetch(PDO::FETCH_NUM)) {
	$form.= "<option value='$row[0]'>$row[0]</option>";
	}
	$form.= "</select>";
	$form.="<br><input type=\"submit\" name=\"submeterTabela\" value=\"Submeter\"class='button'>";
	echo($form);
	}

	// Preencher dados

	if(isset($_POST['submeterTabela']) && !isset($_POST['submeterDados']))
	{
  	$Tabela=$_POST['Tabela'];
  	$form ="<form action=\"$self\" method=\"post\">";
  	$form.="<input type=\"hidden\" name=\"Tabela\"class='tabela1'value=\"$Tabela\"> <br>";  
  	$form.="Introduz Dados<br>";  
  	$sql ="SHOW columns from ".$Tabela;
  	$result = $dbo->query($sql);
  	while ($row = $result->fetch(PDO::FETCH_NUM)) {
   	$sql1="select Campo from descritivoscampos where Tabela='".$Tabela."' and Campo='".$row[0]."';";
   	$Resultado = $dbo->query($sql1);
   	$linha = $Resultado->fetch(PDO::FETCH_NUM);  
   	$form .= "$linha[0]";
   	$form.="<input type=\"text\" name=\"$row[0]\" size=\"5\"><br>";   
  	}
  	$form.=" <br><input type=\"submit\" name=\"submeterDados\"class='botao'value=\"Submeter\">";
  	echo($form);
	}

	if(isset($_POST['submeterDados']))
	{
  	$Tabela=$_POST['Tabela'];
  	$sql ="SHOW columns from ".$Tabela;
  	$result = $dbo->query($sql);
  	$sql1 = "insert into $Tabela(";
  	$aux=0;
  	while ($row = $result->fetch(PDO::FETCH_NUM)) {
   	if ($aux!=0) $sql1 .=", ";
   	if ($row[0]!='id')
   	{
    $sql1 .="$row[0]";  
    $aux=1; 
   	}
  	}
  	$sql1 .=") values (";	

  	$result = $dbo->query($sql);
  	$aux=0;
  	while ($row = $result->fetch(PDO::FETCH_NUM)) {
  	if ($aux!=0) $sql1 .= ", ";

   	if ($row[0]!='id')
   	{
	$aa=$_POST[$row[0]];
  	$sql1 .="'$aa'";  
	//$sql1 .="$row[0]";  
    $aux=1; 
   	}
 	}
  	$sql1 .=");";
  	$conn = mysqli_connect($host_name, $username, $password, $database)
	or die("Could not connect.");
  	$result = mysqli_query($conn, $sql1)
	or die("Could not execute SQL query");
 	if ($result) {     
	echo("Informação introduzida com Sucesso!!");
  	}	}
	?>

Sinceramente já não sei o que mais fazer necessito mesmo de uma ajuda. Obrigado.

Share this post


Link to post
Share on other sites
37 minutos atrás, winterjeferson disse:

O main problem é que o meu programa tem de trabalhar com mais que uma tabela, não pode ter campos declarados (pois eu crio tabelas dinamicamente), fora outras coisas onde o "CRUD" n funciona.

Mas obrigado. 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By makinh0
      algoritmo "CalculoIMC"
      var
         M, A, IMC: Real
      iniciO
          Escreva ("Massa (Kg): ")
          Leia(M)
          Escreva("Altura (m): ")
          Leia (A)
          IMC <- M / (A ^ 2) //massa dividido pela altura ao quadrado;;//
          Escreval("IMC: ", IMC :5:2) //5Casas e 2 decimais //
          Se (IMC >= 18.5) E (IMC < 25) entao
          Escreva ("Parabens! Voce esta no seu peso ideal")
          senao
          Escreva("Voce nao esta na faixa de peso ideal")
          FimSe
          
      fimalgoritmo
       
    • By tarsio
      Boa noite pessoa so novo na programação e gostaria de saber, porque meu tempo limite de consulta está no limite, esse e um pedaço do código fora esse tenho mais 14 query então só 8 funcionam e gostaria de saber alguma maneira para que todas a consultas funcionem. Colocando botoes de alguma maneira resolver esse problema.    <div class="panel-group" id="accordion"> <div class="panel panel-default"> <div class="panel-heading"> <h3 class="panel-title"> <a data-toggle="collapse" data-parent="#accordion" href="#collapse9"><h2>cliente<h2></a>
      </h3> </div> <div id="collapse9" class="panel-collapse collapse"> <div> <?php try{   $query7= $Conexao->query( " SELECT C.FTP_CLIENTE,dbo.MinutesToDuration2021(SUM(DATEDIFF(MINUTE,E.DT_ENVIADO,E.DT_RECEBIDO)),COUNT(E.ID_EXAME)) as TEMPO FROM WR_CLIENTE C INNER JOIN E ON  =  WHERE  = 2 AND (convert(datetime,'$datai',110)) AND (convert(datetime,'$dataf',110)) GROUP BY E ORDER BYE ASC;");   $exs7 = $query7->fetchAll();   }catch(Exception $e){ echo $e->getMessage(); exit; }   ?> <br> <br> <table id="table11" data-toggle="table" class="table table-hover" data-sort-name="FTP_CLIENTE" data-sort-name="TEMPO"> <thead> <tr> <th data-field="FTP_CLIENTE" data-sortable="true" scope="row">CLIENTE</th> <th data-field="TEMPO" data-sortable="true" scope="row">TEMPO</th> </tr> </thead> <tbody> <!---carregar os refistro --> <?php foreach($exs7 as $ex) { ?> <tr>   <td><?php echo $ex['FTP_CLIENTE'];?></td> <td><?php echo $ex['TEMPO'];?></td> </tr> <button class="mais">Carregar mais</button> <?php } ?> </tbody> </table> </div> </div> </div> </div>   </div>
    • By Adriana de Luca
      Estou tentando pegar o id do livro para depois fazer um update para controlar o estoque, consegui pegar o id, porem não consigo coloca-lo no mysql
      Se coloco um id valido, ele traz as informações, porem se chamo  {'$livro_id'} da erro.
       
      Alguém pode por favor me ajudar? agradeço muito.
       
      <?php

      $query = mysql_query("SELECT * FROM produtos 
      inner join estoque ON produtos.livro_id = estoque.livro_id");

      ?>
      <div class="central">
                     <form action="#" method="GET">
                         <fieldset>
                             <legend class="titulo">Consultar Livraria</legend>
                             <select type="text" name="produtos">
                                 <option value="">Selecionar..</option>
                              <?php
                                     $sql =  mysql_query("SELECT livro_id, nome as titulo FROM produtos");
                                      while ($result = mysql_fetch_array($sql) )
                                      {
                                         echo "<option value='".$result['livro_id']."'>".$result['titulo']."</option>";
                                     }
                                 ?>                            
                             </select>
                             <input class="botao" type="submit" name="ajustar" value="Ok" />
                         </fieldset>
                      </form>
                     
       <?php
      //aqui ele mostrara o código do livro    
      echo $_GET['produtos'];
      $livro_id='produtos';

      $sql1="SELECT * FROM produtos 
      inner join estoque ON produtos.livro_id = estoque.livro_id WHERE produtos.livro_id= {'$livro_id'}";
            
      $res=mysql_query($sql1); 
                    while($registro=mysql_fetch_row($res))                
      {    
                                            
        $nome=$registro[1];                             
        $autor=$registro[2]; 
        $editora=$registro[3]; 
        $colecao=$registro[4];                             
        $preco=$registro[5];                                   
        $data=$registro[6];   
        $quantidade=$registro[0];                      
                                           
        ?>
        <?php 
            echo "Título: $nome<br>";                                    
            echo "Autor: $autor<br>"; 
            echo "Editora: $editora<br>";  
            echo "Coleção: $colecao<br>";                             
            echo "Preço: $preco<br>";                                    
            echo "Quantidade: $quantidade<br>"; 
            echo "Data: ".date('d-m-Y', strtotime($data))."<br><p>";   

        mysql_close($connect);               
              
      ?>
    • By vinihhylian0103
      Boa noite, eu tenho um campo no meu cadastro para o usuário selecionar seu curso, que seria esse:
       
      <select name="curso" type="text" required=".$this->fields["cursos"]."> <option value="Informática">Informática</option> <option value="ADM">Administração</option> <option value="Edificações">Edificações</option> /> e eu gostaria de saber como gravar essa escolha no banco de dados, segue o código de inserrir
       
      <?php if(!$conect=mysqli_connect('localhost','root','','cadastros')) die ('erro ao conectar'); #Recolhendo os dados do formulário $nome=mysqli_real_escape_string($conect, $_POST['nome']); $sobrenome=mysqli_real_escape_string($conect, $_POST['sobrenome']); $data=mysqli_real_escape_string($conect, $_POST['data_nasc']); $rm=mysqli_real_escape_string($conect, $_POST['rm']); $curso=mysqli_real_escape_string($conect, $_POST['curso']); $email=mysqli_real_escape_string($conect, $_POST['email']); $senha=mysqli_real_escape_string($conect, $_POST['senha']); # Verificando apenas um campo, no caso dado1. $sql = $conect->query("SELECT * FROM usuarios WHERE email='$email'"); if(mysqli_num_rows($sql) > 0){ echo "Este email já foi cadastrado!"; exit(); } else { if(!$conect->query("INSERT INTO usuarios(nome, sobrenome, data_nasc, rm, curso, email, senha) VALUES('$nome','$sobrenome','$data','$rm','$curso','$email','$senha')")) die ('Os dados não foram inseridos'); echo "<script type='text/javascript'>alert('Cadastro Concluído!');</script>"; header('Location: index.html'); } Muito obrigado desde já!
    • By andrelimaverde
      Pessoal preciso de uma ajuda, desde já agradeço à todos.
      "Site teste, estudos..."
      Tenho um formulário com 3 etapas, ele está trabalhando em php normalmente e salvando os dados preenchidos em .txt (para testes apenas).
      Vamos lá, nas 3 etapas o form está com action="1.php" (2.php,  3.php) e method="post". [Não vou colocar muito código para simplificar, pois é um formulário básico fácil de entender]
      Exemplo:  Pagina 1 - envia para action '1.php'
      Nome: 
      Telefone:
      <input type="submit" value="Continuar">
      (
       O arquivo 1.php armazena os dados e redireciona => header( 'Location:Pagina2.php' ) ;   
       Assim como os outros php's
      )
      Pagina 2 - action 2.php armazena os dados e redireciona => header( 'Location:Pagina3.php' ) ; 
      Cidade:
      Endereço:
      <input type="submit" value="Continuar">
       
      A questão está na 3ª página
      Página 3 -
      Email:
      (Preciso que após preencher o campo da página 3 no caso "Email:",  ao clicar no botão, neste caso não sei se seria um submit ou button. O formulário não redirecionar para pagina 4, ao clicar ele enviar e salvar normalmente, mas aparecer um novo input na mesma pagina por Exemplo:"Twitter:"  ) 
      No caso preciso que ele não redirecione , gostaria de colocar um gif de carregando por 15 segundos por exemplo como se estivesse processando as informações... e em seguida ele apresentar o novo input do "Twitter:" , onde ai sim enviaria normalmente...
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.