Ir para conteúdo

POWERED BY:

Arquivado

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

Murilo Machado

[Resolvido] Insert, Update e Delete uma unica vez usando FOREACH

Recommended Posts

Eaii bruxaria!! Não sou muito de ficar postando e biriri. Mas de tanto ficar fazendo insert, update, e delete ... resolvi criar (ou ao menos tentar), um método mais rápido, fácil, e na maioria das vezes ÚTIL :D

 

Já estou utilizando ele. Por enquanto não tive nenhum erro. Serve bastaste, basta adptá-lo para alguns casos específicos. To disponibilizando pra ter a opnião de vocês. Se ele realmente funciona e se é útil, e também, é claro, se tem como deixá-lo mais "limpo".

 

Bom. To no aguardo. Um abraço!

att.

Murilo Machado

 

<?php

require_once('../inc/conecta.inc.php'); // CONECTO COM O BANCO DE DADOS

// PEGO A TABELA PASSADA POR GET NO ACTION DO FORM
$tabela = $_GET['cod'];
$id = $_GET['id'];

if(isset($_GET['acao']) && $_GET['acao'] == 'exc'){
$sql = mysql_query("DELETE FROM $tabela WHERE id$tabela = '$id'");

echo "DELETOU";
}else{

switch ($_GET['botao']){ // VERIFICO A AÇÃO PASSADA POR GET
		
		case "Cadastrar":			
			
			$sql = "INSERT INTO $tabela ("; // COMPLEMENTO DA VAR $SQL
			
			// -------------------------------------------------------------------
			// ------------------------ PEGO OS CAMPOS ---------------------------
			foreach($_POST as $indice=>$elemento) 
			{
			$campo = $indice;
			
			$sql .= $campo.", ";
			}
			
			$sql .=") VALUES ( "; // COMPLEMENTO DA VAR $SQL
			
			// -------------------------------------------------------------------
			// ------------------------ PEGO OS REGISTROS ------------------------	
		
			foreach($_POST as $indice=>$elemento)
			{
			$registro = $elemento;
			
			$sql .= "'".$registro."', ";
			}
			
			$sql .=");"; // COMPLEMENTO	DA VAR $SQL
			// -------------------------------------------------------------------
			// ----------------- RETIRO A VIRGULA DO ÚLTIMO CAMPO ----------------	
			
			$sql = str_replace(", )",")",$sql);
		
			//echo $sql;
			
			$executa = mysql_query($sql) or die(mysql_error());
			
			echo "Inseriu!!";
		break;
	
		case "Atualizar":
		
			$sql = "UPDATE $tabela SET ";
			
			// -------------------------------------------------------------------
			// ---------------- PEGO OS CAMPOS E OS REGISTROS --------------------
			foreach($_POST as $indice=>$elemento) 
			{
			$campo = $indice;
			$registro = $elemento;
			
			$sql .= $campo." = '$registro', ";
			}
			
			$sql .= "WHERE id$tabela = '$id'";
			//echo $sql;
			
			// -------------------------------------------------------------------
			// ----------------- RETIRO A VIRGULA DO ÚLTIMO CAMPO ----------------
			$sql = str_replace(", W"," W",$sql);
			
			$executa = mysql_query($sql) or die(mysql_error());
			
			echo "Atualizou!!!";
		
		break;
	
}	
}
?>

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.