SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQLi/PDO/(MySQL)

MySQLi/PDO/(MySQL) Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQLi/PDO/(MySQL) diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 28.12.2004, 10:35:40
ubs ubs ist offline
Anfänger
 
Registriert seit: Dec 2004
Beiträge: 3
Updatefunktion in Formular u. DB Schreiben, Hilfe!

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<br><br>
</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><BR>
<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<br><br>
</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<BR>
<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<BR>
<INPUT TYPE="Radio" SIZE="30" NAME="Abstammend" VALUE="Mutter">von Mutter<BR>
<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><BR>
<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
  #2  
Alt 28.12.2004, 10:46:52
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
Die Update Anweisung muss im Code vor der Stelle stehen, in der die Daten aus der Datenbank geholt werden, da sonst natürlich auch nur die alten Daten zurückgeliefert werden können.
Mit Zitat antworten
  #3  
Alt 28.12.2004, 15:43:19
ubs ubs ist offline
Anfänger
 
Registriert seit: Dec 2004
Beiträge: 3
Hi, hm das passt aber auch nicht ganz, denn die Daten müssen ja erstmal rausgeholt werden, dass sie geändert werden können. Also denk ich, dass sobald ich den ändern button drücke, die updates gefahren werden müssen und sich das Formular dann mit den Daten neu laden muss. ......... grübel
Mit Zitat antworten
  #4  
Alt 28.12.2004, 15:47:12
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
Vom Prinzip her sieht es so aus:
PHP-Code:
<?php
    
if($_POST['action'] == 'save') {
        
//  hier das update
    
}

    
//  hier select
?>
<form ...>
<input type="hidden" name="action" value="save">
<input type="hidden" name="id" value="<?php echo $row['id']; ?>">
Mit Zitat antworten
  #5  
Alt 28.12.2004, 22:55:32
ubs ubs ist offline
Anfänger
 
Registriert seit: Dec 2004
Beiträge: 3
Hi geht viel einfacher, wenn man die eine Datei in 2 php Dateien aufsplittet, nun funzt es. grüsse ubs
Mit Zitat antworten
  #6  
Alt 29.12.2004, 10:34:38
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
Zitat:
Original geschrieben von ubs
Hi geht viel einfacher, wenn man die eine Datei in 2 php Dateien aufsplittet, nun funzt es. grüsse ubs
Ob das jetzt einfacher ist oder nicht, darüber kann man sicherlich streiten ;-) Aber so lange es bei dir funktioniert und du weißt warum.
Ein Vorteil bei der Methode mit zwei Dateien ist auf jeden Fall, dass der Benutzer das Formular nach dem Absenden ruhig neu laden kann, ohne dass der Datensatz erneut "upgedated" wird.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

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

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 19:28:56 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.


© 2001-2024 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt