Ir para conteúdo

POWERED BY:

Arquivado

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

dfrancacosta

Selecionando dados em uma tabela e inserindo em outra

Recommended Posts

Olá galera,eu como iniciante em php e mysql, trago a seguinte duvida aos navegantes....preciso selecionar alguns dados em uma tabela e inserir estes dados selecionados em outra tabela (com campos iguais), via php.agradeço.Diogo.

Compartilhar este post


Link para o post
Compartilhar em outros sites

primeira mente seja bem vindo ao forum. mais por selecionar se você ja pode inserir direto. e qual a finalidade de você ter que inserir em outra tabela dados iguais em campos iguais. você não acha que pode ficar meio redundante as informações. mais bem é simples. você vai fazer o select na tabelaguarda o valor em uma variavel e logo depois inserir esses dados. bem se for uma tabela que e relacionada a principal. no caso você vai inserir o id do ultimo cadastro. então você pode usar a função mysql_insert_id();assim. $idInserido = mysql_insert_id();ele pega o id de um campo auto-increment do ultimo insert se tiver mais duvidas tente fazer e posta o erro ou a dyuvida. e tb posta a estrutura das suas tabelas.

Compartilhar este post


Link para o post
Compartilhar em outros sites

seria algo do tipo, bem vou postar somente o SQL ok ?Exemplo :- Tabela de Origem (tab1) : campo1, campo2- Tabela de Destino (tab2) : autonumeracao, campo1, campo2Pode-se fazer assim

INSERT INTO tab2 ( SELECT null, campo1, campo2 FROM tab1 );

Compartilhar este post


Link para o post
Compartilhar em outros sites

bom não é necessariamente redundante se ele estiver usando uma tabela temporária e depois inserir em uma definitiva.mas não precisa buscar os dados e jogar em uma variável para depois inserir, faz assim:insert into tabela ('os campos q você quer inserir') values select ('os campos q você qr selecionar') from tabela2 where ...é interessante especificar os campos q você quer inserir.

Compartilhar este post


Link para o post
Compartilhar em outros sites

primeira mente seja bem vindo ao forum. mais por selecionar se você ja pode inserir direto. e qual a finalidade de você ter que inserir em outra tabela dados iguais em campos iguais. você não acha que pode ficar meio redundante as informações. mais bem é simples. você vai fazer o select na tabelaguarda o valor em uma variavel e logo depois inserir esses dados. bem se for uma tabela que e relacionada a principal. no caso você vai inserir o id do ultimo cadastro. então você pode usar a função mysql_insert_id();assim. $idInserido = mysql_insert_id();ele pega o id de um campo auto-increment do ultimo insert se tiver mais duvidas tente fazer e posta o erro ou a dyuvida. e tb posta a estrutura das suas tabelas.

Boa tarde amigos Imasters.A minha dúvida quanto ao assunto é o seguinte.Estou criando uma espécie de loja para um site de uma empresa da cidade.Enfim, tenho duas tabelas que precisam ter o mesmo id.Vou postar o código e explicar a seguinte dúvida.Neste primeiro form, ele cadastra a marca do produto.
<table width="625" border="0" align="center" cellpadding="0" cellspacing="0">  <tr>    <td align="center" valign="top"><img src="images/spacer.gif" width="200" height="10" /></td>  </tr>  <tr>    <td align="center" valign="top"><table width="620" border="0" align="right" cellpadding="0" cellspacing="0">      <tr>        <td width="120"><table width="120" border="0" cellpadding="0" cellspacing="0" class="campo_01">          <tr>            <td height="20" align="center">Cadastrar Marca</td>          </tr>        </table></td>        <td width="500"><hr width="100%" size="1" class="campo_01"></td>      </tr>    </table></td>  </tr>  <tr>    <td height="366" align="center" valign="top"><br />            <form action="index.php?adm=adicionar_marcadeoculos&acao=cadastrar" method="post" enctype="multipart/form-data" name="form1">              <table border="0" cellpadding="8" cellspacing="0" class="borda_02">          <tr>            <td><table width="10" border="0" cellpadding="1" cellspacing="0">                <tr>                  <td width="42" height="4" align="right"><span class="style5">Marca:</span></td>                  <td width="138" height="4"><input name="marca" type="text" class="campo_01" id="marca" size="50" /></td>                </tr>                <tr>                  <td height="18" colspan="2" align="center"><hr width="92%" class="campo_01"></td>                </tr>                <tr>                  <td height="35" colspan="2" align="center"><input name="button" type="submit" class="style2" id="button" value="Cadastrar" /></td>                </tr>            </table></td>          </tr>        </table>    </form>    </td>  </tr></table><?require_once('../include/config.php');if ($acao=="cadastrar") {if (!$marca){echo "<script> alert('Campo incompleto!!!'); </script><script>java script:window.history.go(-1)</script>";} else {$sql = mysql_query("INSERT INTO oculosmarcas (id, marca) VALUES ('', '$marca')")  or die(mysql_error());$id = mysql_insert_id();echo "<script> alert('Cadastrada com sucesso!');</SCRIPT>";echo "<meta http-equiv='refresh' content='0;URL=?adm=adicionar_oculos&id=$id&marca=$marca'>";}}?>
Aí que começa o problema.Eu preciso que ele pegue o valor da ID criado por essa inserção, jogue no meta refresh que faz o redirecionamento para a pagina que cadastrará o produto. <meta http-equiv='refresh' content='0;URL=?adm=adicionar_oculos&id=$id&marca=$marca'>Que é a seguinte:
<?require '../include/config.php';require_once "adicionar_oculos_db.php";$upload = new Upload();$upload->Envia_Arquivo();$query_marcas = mysql_query("SELECT * FROM oculosmarcas WHERE marca='$marca'");?><style type="text/css"><!--body {	margin-left: 0px;	margin-top: 0px;	margin-right: 0px;	margin-bottom: 0px;	background-color: #FFFFFF;}</style><link href="../css/style.css" rel="stylesheet" type="text/css"><body><table width="625" border="0" align="center" cellpadding="0" cellspacing="0">  <tr>    <td align="center" valign="top"><img src="images/spacer.gif" width="200" height="10" /></td>  </tr>  <tr>    <td align="center" valign="top"><table width="620" border="0" align="right" cellpadding="0" cellspacing="0">      <tr>        <td width="120"><table width="120" border="0" cellpadding="0" cellspacing="0" class="campo_01">          <tr>            <td height="20" align="center">Cadastrar Produto</td>          </tr>        </table></td>        <td width="500"><hr width="100%" size="1" class="campo_01"></td>      </tr>    </table></td>  </tr>  <tr>    <td height="366" align="center" valign="top"><br />      <form action="#" method="post" enctype="multipart/form-data" name="form1">        <table border="0" cellpadding="8" cellspacing="0" class="borda_02">          <tr>            <td><table width="10" border="0" cellpadding="1" cellspacing="0">                <tr>                  <td width="180" height="9" align="right"><span class="style2">Marca:</span></td>                  <td>                  <select name="marca" class="campo_01" id="marca">                  				  <? while ($row = mysql_fetch_array($query_marcas)) { ?>				  <option value="<? echo $row[marca]; ?>"><? echo $row[marca]; ?></option>                                    <? } ?>                                    </select>                  </td>                </tr>                <tr>                  <td height="9" align="right"><span class="style2">Título:</span></td>                  <td height="9"><input name="titulo" type="text" class="campo_01" id="titulo" size="75" /></td>                </tr>                <tr>                  <td height="18" align="right" class="style2">    Referência: </td>                  <td align="left" class="style2"><input name="referencia" type="text" class="campo_01" id="referencia" size="25" /></td>                </tr>                <tr>                  <td height="18" align="right"><span class="style2">Foto:</span></td>                  <td height="18" align="left"><input name="arquivo" type="file" class="campo_01" id="arquivo" size="35" /></td>                </tr>                <tr>                  <td height="18" colspan="2" align="center"><hr width="92%" class="campo_01"></td>                </tr>                <tr>                  <td height="18" colspan="2" align="center"><span class="style2">                    <textarea name="detalhes" cols="81" rows="8" class="campo_01" id="detalhes"></textarea>                  </span></td>                </tr>                <tr>                  <td height="35" colspan="2" align="center"><input name="button" type="submit" class="style2" id="button" value="Cadastrar" /></td>                </tr>            </table></td>          </tr>        </table>    </form></td>  </tr></table></body>
A minha duvida é como pegar esse valor de ID da inserção e joga no redirecionamento, e na pagina de cadastro do produto colocarei um WHERE id='$id'.Desde já agradeço quem me ajudar.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Pessoal como eu posso fazer isso com update???fazer update em duas tabelas???Eu preciso o id da primeira p poder editar a segunda...

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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