burmy
Goto Top

2 Buttons INSERT und UPDATE in einer if - Anweisung

2 Buttons INSERT und UPDATE für eine if - Anweisung

Hallo

Ich habe 2 Buttons erstellt ( Insert und update, und möchte nun eine IF Anweisung schreiben, wenn Button1 gedrückt wird wird ein isert erfolgen und wenn Button2 gedrückt wird wird ein update erfolgen, ich weiß nun nicht wie ich das anstellen soll.

Bestimmt eine Gute Idee für die Superschlauen hier im Forum., ich dachte so an diese Idee:

if(isset($_POST['Button1']) or ($_POST['Button2']))  {  

    if(isset($_POST['Button1'])) // DATEN in DB updaten  {  
	if($ID) {
        		$mysql_query = "update T_INDEX set NAME='$NAME', TYP_ID='$TYP_ID'   
		                           where ID=$ID";  
		$rs = mysql_query($mysql_query) or die ("keine gültige DB Abfrage(INSERT)");  
					
echo "<span class=\"success\">Ihr Update wurde korrekt ausgeführt und zur Datenbank übertragen.  
</span>";  
echo "<br/><a href=\"index.php?id=1\" class=\"lnk\">zurueck zur Eingabe<a/>";  
       } 
}

if(isset($_POST['Button2'])) // DATEN in DB eintragen  {  
	$mysql_query = "insert into T_INDEX (ID, NAME, TYP_ID) values   
			('','$NAME','$TYP_ID', )";  
	$ID=mysql_insert_id();
	$rs = mysql_query($mysql_query) or die ("keine gültige DB Abfrage (INSERT)");  
					
echo "<span class=\"success\">Der neue Datensatz wurde korrekt zur Datenbank übertragen.  
</span>";  
echo "<br/><a href=\"index.php?id=1\" class=\"lnk\">zurueck zur Eingabe<a/>";  
	}
}


Die Anführungszeichen werden durch ein \ dargestellt

Ich weiß nicht genau aber das ist wohl der falsche Ansatz, oder ?

Freue mich auf eine Idee ?

Gruß Martin

Content-Key: 44108

Url: https://administrator.de/contentid/44108

Printed on: April 19, 2024 at 15:04 o'clock

Member: Dani
Dani Nov 09, 2006 at 18:22:46 (UTC)
Goto Top
Hi,
also so müsste es gehen:
if(isset($_POST['Button1']) or ($_POST['Button2']))   
 {
   if(isset($_POST['Button1'])) // DATEN in DB updaten   
    {
     if($ID)
      {
        msql_query = "update T_INDEX set NAME='".$NAME."', TYP_ID='".$TYP_ID."' where ID=".$ID."";  
        rs = mysql_query($mysql_query) or die ("keine gültige DB Abfrage(INSERT)");  

	echo "<span class=\"success\">Ihr Update wurde korrekt ausgeführt und zur Datenbank übertragen.</span>";  
	echo "<br/><a href=\"index.php?id=1\" class=\"lnk\">zurueck zur Eingabe<a/>";  
      } 
    }
  else if(isset($_POST['Button2'])) // DATEN in DB eintragen  
    {
	$mysql_query = "insert into T_INDEX (ID, NAME, TYP_ID) values ('','".$NAME."','".$TYP_ID."','')";  
	$ID=mysql_insert_id();
	$rs = mysql_query($mysql_query) or die ("keine gültige DB Abfrage (INSERT)");  
					
	echo "<span class=\"success\">Der neue Datensatz wurde korrekt zur Datenbank übertragen.</span>";  
	echo "<br/><a href=\"index.php?id=1\" class=\"lnk\">zurueck zur Eingabe<a/>";  
    }
}


Gruß
Dani
Member: burmy
burmy Nov 09, 2006 at 18:40:36 (UTC)
Goto Top
Hallo


Vielen Dank für die Antwort, die Syntax in den einzelnen Abfragen ist richtig meinerseits, ich dachte da an die Reihenfolge der IF Anweisungen und der Klammern, ob das richtig ist und überhaupt funktioniert ?

if(isset... ) or (isset...) { if....

Kann ich überhaupt die if(isset) Anweisungen so hintereinander schreiben und dann innerhalb der If Anweisung beide if (Button1) und if (Button2) Afragen?

Das war meine Frage ?

Gruß Burmy
Member: Dani
Dani Nov 09, 2006 at 20:07:35 (UTC)
Goto Top
Hi,
klar geht das!! Wieso auch nicht. Es kann bei meinem Beispiel nur eins wahr sein!


Gruß
Dani
Member: Guenni
Guenni Nov 09, 2006 at 22:22:38 (UTC)
Goto Top
@burmy

Hi,

der Ansatz ist nicht direkt falsch, nur die Ausführung.

Verkürzt heißt das,

if(button1 oder button2)
if(button1)

ist unnötig, wenn das Form gesendet wurde, dann wurde ja Button1 oder Button2
angeklickt, von daher entfällt schonmal if(button1 oder button2)

Vorausgesetzt, die Buttons wurden folg. definiert...

<input type=submit name=cmd value=Insert>
<input type=submit name=cmd value=Update>

... kannst du abfragen...

if($_POST['cmd']=='Insert'){
Datensatz einfügen
}

if($_POST['cmd']=='Update'){
Datensatz ändern
}

Grüße
Günni