php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 27.12.2004, 16:08  
Gast
 
Beiträge: n/a
Standard Update Funktion mit Formular Experte gesucht...

Hallo, hab da folgendes Problem, ist etwas schwer zu erklären aber ich versuchs einfach mal:

Ich habe eine Seite (suchen.php) auf der die Einzelnen Datensätze ausgegeben werden. Hinter jeden Datensatz hab ich einen link gemacht über den eine neue Seite aufgerufen wird (update.php). Die IDnr des Datensatzes wird im link auch mit übergeben. Wenn mann den Link anklickt kommt man auf die UpdateFormular Seite. Hier hab ich es geschafft, dass die richtigen Werte aus der DB in die Felder eingefügt werden (je nachem, welche ID vorher übergeben wurde).....

So nun zu meinem Problem: Auf der Updateseite ist ein Button "ändern", wenn dieser gedrückt wird, soll sich das Formular neu laden, die neuen Werte in die DB geschrieben werden und natürlich soll auch das Formular mit den neuen daten gefüllt werden...

Hier hol ich mir die übergebene IDnr und mach den SQL Befehl um mir die Daten rauszufischen.


if (isset($_GET["id"])) // Übergebenen Wert der Variable PersoID wieder einlesen in $PersoID
$PersoID = $_GET["id"];
else
$PersoID = 0;

if ($PersoID) //falls Wert übergeben wird wird ausgeführt:
{
$query = "SELECT * FROM TabPerson,TabEltern WHERE TabPerson.Idnr = $PersoID AND TabEltern.Idnr = '$PersoID'"; // Select zusammenbauen
$result = mysql_query($query, $verbindung); // Select gegen DB ausführen
$num = mysql_Num_Rows($result); // schreibt die Anzahl der gefundenen Datensätze in die Variable $num.

$Geschlecht_sql=mysql_result($result, 0, "Geschlecht"); //Einlesen des DB Wertes in Variable um die Unterscheidung mit if machen zu können, welcher Radiobutton gesetzt werden muss
$Abstammend_sql=mysql_result($result, 0, "Abstammend"); //Einlesen des DB Wertes in Variable um die Unterscheidung mit if machen zu können, welcher Radiobutton gesetzt werden muss

if (!$result)
{
print mysql_error();
die("Query $query ist ungültiges SQL.");
}

if ($num != 0) //falls Datensätze gefunden wurden führe aus:
{
?>


so, dann kommt das Formular und die Werte werden in den Value eingelesen


<TABLE BORDER="0" WIDTH=400>
<form name="adminformular" method="post">
<TR>
<TD>
<font face="arial" size="4">
PHP Admin Bereich


</font>
</TD>
</TR>
</TABLE>
<TABLE BORDER="0" WIDTH="">
<TR>
<TD WIDTH="100">
<font face="arial" size="2">
Personr:
</font>
</TD>
<TD>
<INPUT TYPE="TEXT" SIZE="10" NAME="Idperson" Value="<?php echo mysql_result($result, 0, "Idnr")?>" readonly>
</TD>
</TR>
<TR>
<TD WIDTH="100">
<font face="arial" size="2">
Vorname:
</font>
</TD>
<TD>
<INPUT TYPE="TEXT" SIZE="30" NAME="Vorname" Value="<?php echo mysql_result($result, 0, "Vorname")?>">
</TD>
</TR>



.
.
.
.
.
.
.usw





<TR>
<TD>

<input type="submit" value="&auml;ndern" name="aendern" size="70">
<input type="button" value="suchen" name="Suchen" size="70" onclick="link('suchen.php');">
<input type="submit" value="l&ouml;schen" name="loeschen" size="70">
</form>

</TD>
</TR>
</TABLE>

</BODY>
</HTML>
<?


und nun hab ich mir gedacht, wenn der ändern Button gedrückt wird soll er folgendes machen: Der UPDATE BEFEHL FUNKTIONIERT AUCH ÜBER PHPMYADMIN


}
}

else if ($_POST['aendern']!=NULL && $Vorname != NULL)// wenn keine PersoIDnummer vorhanden, wird ab hier ein leeres Formular ausgegeben!
{
$Idperson=$_POST['Idperson'];
$Vorname=$_POST['Vorname'];
$Nachname=$_POST['Nachname'];
$Geburtsdatum=$_POST['Geburtsdatum'];
$Wohnort=$_POST['Wohnort'];
$Geschlecht=$_POST['Geschlecht'];
$Abstammend=$_POST['Abstammend'];
echo $Idperson;
echo $Vorname;
echo $Nachname;
echo $Wohnort;
echo $Geschlecht;
echo $Abstammend;

$query = "UPDATE TabPerson,TabEltern SET TabPerson.Vorname='$Vorname', TabPerson.Nachname='$Nachname', TabPerson.Geburtsdatum='$Geburtsdatum', TabPerson.Wohnort='$Wohnort', TabPerson.Geschlecht='$Geschlecht', TabEltern.Abstammend='$Abstammend' WHERE TabEltern.Idnr = $Idperson AND TabPerson.Idnr = $Idperson";

$result=mysql_query($query);
?>
<TABLE BORDER="0" WIDTH=400>
<form name="adminformular2" method="post">
<TR>
<TD>
<font face="arial" size="4">
PHP Admin Bereich


</font>
</TD>
</TR>
</TABLE>
<TABLE BORDER="0" WIDTH="">
<!-- <TR>
<TD WIDTH="100">
<font face="arial" size="2">
Personr:
</font>
</TD>
<TD>
<INPUT TYPE="TEXT" SIZE="10" NAME="Idperson" Value="">
</TD>
</TR>-->
<TR>
<TD WIDTH="100">
<font face="arial" size="2">
Vorname:
</font>
</TD>
<TD>
<INPUT TYPE="TEXT" SIZE="30" NAME="Vorname" Value="<?php echo $Vorname; ?>">
</TD>
</TR>
<TR>
<TD WIDTH="100">
<font face="arial" size="2">
Nachname:
</font>
</TD>
<TD>
<INPUT TYPE="TEXT" SIZE="30" NAME="Nachname" Value="<?php echo $Nachname; ?>">
</TD>
</TR>
<TR>
<TD WIDTH="100">
<font face="arial" size="2">
Geburtsdatum:
</font>
</TD>
<TD>
<INPUT TYPE="TEXT" SIZE="30" NAME="Geburtsdatum" Value="">
</TD>
</TR>
<TR>
<TD WIDTH="100">
<font face="arial" size="2">
Wohnort:
</font>
</TD>
<TD>
<INPUT TYPE="TEXT" SIZE="30" NAME="Wohnort" Value="">
</TD>
</TR>
<TR>
<TD WIDTH="100" VALIGN="TOP">
<font face="arial" size="2">
Geschlecht:
</font>
</TD>
<TD>
<INPUT TYPE="Radio" SIZE="30" NAME="Geschlecht" VALUE="Maennlich" checked>männlich

<INPUT TYPE="Radio" SIZE="30" NAME="Geschlecht" VALUE="Weiblich">weiblich
</TD>
</TR>
<TR>
<TD WIDTH="100" VALIGN="TOP">
<font face="arial" size="2">
Abstammend:
</font>
</TD>
<TD>
<INPUT TYPE="Radio" SIZE="30" NAME="Abstammend" VALUE="Vater" checked>vom Vater

<INPUT TYPE="Radio" SIZE="30" NAME="Abstammend" VALUE="Mutter">von Mutter

<INPUT TYPE="Radio" SIZE="30" NAME="Abstammend" VALUE="Wedernoch">Kind
</TD>
</TR>
<TR>
<TD WIDTH="100" VALIGN="TOP">
<font face="arial" size="2">
Kommentar:
</font>
</TD>
<TD>
<textarea cols="20" rows="5" name="Text">

</textarea>
</TD>
</TR>

</TABLE>

<TABLE>
<TR>
<TD>

<input type="submit" value="speichern" name="Speichern" size="70">
<input type="button" value="suchen" name="Suchen" size="70" onclick="link('suchen.php');">
<input type="reset" value="reset" name="reset" size="70">
</form>

</TD>
</TR>
</TABLE>

</BODY>
</HTML>

<?
}

/***************************** DB Verbindung trennen *************************************************/

mysql_close();
?>


so ich hoffe das war einigermaßen verständlich. Kann mir jemand weiterhelfen, ?

grüsse ubs


  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 30.12.2004, 09:56  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

absolut ungetestet. hatte nur lust mal was zu tippen. ^^

PHP-Code:
<?php

   
# Datei suchausgabe.php

   /**
     *  Ausgabe der Suchergebnisse. Sollte klar sein.
     *  'update'-Link mit URL-Parameter id, der die ID des Datensatzes enthält
     */

?>


<?php

   
# Datei update.php


   
if( 
       isset(
$_GET['id'])
       AND
       
is_numeric($_GET['id'])
       AND
       
$_GET['id'] > 0
     
)
   {
       if( isset(
$_POST['sent']) )
       {
           
$spalte1 $_POST['spalte1'];
           
// irgendwelche Sicherheitsüberprüfungen zwischenschieben

           
$sql "UPDATE 
                          tabelle
                      SET
                          spalte1 = '" 
$spalte1 "'
                      WHERE
                          id = " 
$_POST['id'];

           
mysql_query($sql) or die( 'Error[UPDATE.datensatzÄndern]:  
 ' 
mysql_error() );

           
           
header'Location: ' $_SERVER['PHP_SELF'] );
           exit(); 
       }
       
       
$sql "SELECT
                       spalte1
                  FROM
                       tabelle
                  WHERE
                       id = " 
$_GET['id'];

       
$res mysql_query($sql) or die( 'Error[SELECT.datensatz]: 
 ' 
mysql_error() );

       
       
$data mysql_fetch_object($res); 

       
printf'<form action="%s" method="post">
                   <input type="text" name="spalte1" value="%s" />
                   <input type="hidden" name="id" value="%s" />
                   <input type="hidden" name="sent" value="1" />
                   <input type="submit" name="submit" value="ändern" />                   
                </form>'
,
                
$_SERVER['PHP_SELF'],
                
$data->spalte1,
                
$_GET['id'] );
       
   }
   else
   {
        
$pfad 'pfad/suchausgabe.php';
        
header'Location: ' $pfad );
        exit();
   } 


?>
bei fragen oder auftretenden fehlern .. einfach hier posten
imported_Ben ist offline   Mit Zitat antworten
Alt 30.12.2004, 12:04  
Gast
 
Beiträge: n/a
Standard

Moin, verdammt, jetzt hast du dir so viel Mühe gemacht. Habs leider schon gebacken bekommen, hab einfach 2 php Datein gemacht, dann wars einfacher.....!
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Wert aus Textfeld in neues Formular übernehmen (kein Submit) PsychoEagle HTML, Usability und Barrierefreiheit 9 02.01.2007 14:51
formular unterscheidet falsch bei update und neueintrag vod`` PHP Tipps 2006 8 07.06.2006 17:19
Tutorial für Formular gesucht tayke PHP Tipps 2006 2 14.04.2006 22:37
funktion soll funktion aufrufen, welche datei einbindet PHP Tipps 2006 12 13.03.2006 18:31
[Erledigt] Formular in Formular HTML, Usability und Barrierefreiheit 4 19.10.2005 12:18
Formular daten an Funktion übergeben... wie??? PHP Tipps 2005-2 2 26.06.2005 04:46
Mail Funktion mit Variablen aus einem Formular PHP Tipps 2005 2 17.03.2005 14:21
Formular UPDATE PHP Tipps 2005 5 18.02.2005 13:44
PHP Rezepte Formular gesucht PHP Tipps 2005 3 17.01.2005 10:02
[Erledigt] Im Formular user abfragen? Datenbanken 3 06.01.2005 10:51
Formular nach UPDATE anzeigen PHP Tipps 2004-2 5 22.12.2004 02:06
[Erledigt] Daten in einem Formular ausgeben und ändern PHP Tipps 2004-2 7 07.12.2004 17:22
problem mit update funktion aircrash PHP Tipps 2004-2 3 17.11.2004 16:55
Formular Daten an Funktion in selber Datei übergeben PHP Tipps 2004 5 21.07.2004 13:42
SQL Update Formular Datenbanken 1 12.07.2004 08:45

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
formular input an sql update, sql update mit formular, daten formular ausgeben und updaten, php update funktion, update function php, input type=\button\ value=\speichern\ onclick=\this.form.vorname.value = \, php input type radio aktualisieren, print (\<input type=hidden name=\\\idnr\\\ value=\\\$idnr\\\>\\n\);, input geburtsdatum

Alle Zeitangaben in WEZ +1. Es ist jetzt 16:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.