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 ::

Webseiten professionell erstellen

Webseiten professionell erstellen 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 > PHP Grundlagen
Hilfe Community Kalender Heutige Beiträge Suchen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 26.05.2009, 17:51:53
TRC120 TRC120 ist offline
Anfänger
 
Registriert seit: May 2009
Alter: 59
Beiträge: 25
Benutzerdaten auslesen und ändern

Hallo zusammen.
Ich bin ein Neuling in php und habe einen 4 Wochen Grundkurs hinter mir.
Jetzt wollte ich für mein Loginsystem ein script machen, wo der Benutzer seine Daten ändern kann.
Ich kann die Daten auslesen, sie in ein Formular bringen, das Formular auch ändern.

Jetzt mein Problem : Wenn ich auf senden klicke, geschied nichts.
Kann mir da jemand helfen ??

Hier das geschriebene, was ich bis jetzt gemacht habe.

PHP-Code:
<?php
 session_start
();

// Prüfen, ob Benutzer korekt eingeloggt ist,
// durch Prüfen ob Session-Variable existiert

 
if (isset ($_SESSION['berechtigt']) == false)
 {
?>
  <meta http-equiv="refresh" content="0;URL=index.php?seite=login_inc"></meta>
<?php
  
die();
}

 
$db = new MySQLi("localhost","root","","trc")
      or die(
'Derzeit kann keine Verbindung zur Datenbank hergestellt werden'); 
 
          
// Ändern eines oder mehrerer Datensätze
// *************************************     
if (isset($_POST['senden']))
  {
    
$anfrageart "INSERT INTO 'userdaten' VALUES('','vname','nname','benutzername','anschrift','plz','ort','telefon','icq','home','email')"

                     
    
$ergebnis $db -> query($anfrageart); // Senden an Dabenbank

     
if ($ergebnis -> affected_rows 0)
      {
        echo 
"Neue Daten wurde gespeichert!<br>";
       
$tabellen_id $db -> insert_id// Aulesen des neu erstellten Autowertes.
      
}
       else
      {
       echo 
"Datensatz konnte nicht eingetragen werden!<br>";
      }     

/***************************************************************************************************************/         

     
// ende if klammer send button
              
      
 
echo "<div class='profil'>";                  
   echo 
'<form method="post" action="'.$_SERVER['PHP_SELF'].'">'
      echo  
'<h3>Profil ändern :</h3>';
       echo 
'<table width=100%>';          
 
       echo   
'<tr><td width=20%>Vorname:</td><td><input type="text" name="vname" size="50" value="'.$result['vname'].'"><br></td></tr>';
       echo   
'<tr><td>Nachname:</td><td><input type="text" name="nname" size="50" value="'.$result['nname'].'"><br></td></tr>';
       echo   
'<tr><td>Benutzername:</td><td><input type="text" name="benutzername" size="50" value="'.$result['benutzername'].'"><br></td></tr>';
       echo   
'<tr><td>Anschrift:</td><td><input type="text" name="anschrift" size="50" value="'.$result['anschrift'].'"><br></td></tr>';
       echo   
'<tr><td>PLZ:</td><td><input type="text" name="plz" size="50" value="'.$result['plz'].'"><br></td></tr>';
       echo   
'<tr><td>Ort:</td><td><input type="text" name="ort" size="50" value="'.$result['ort'].'"><br></td></tr>';
       echo   
'<tr><td>Telefon:</td><td><input type="text" name="telefon" size="50" value="'.$result['telefon'].'"><br></td></tr>'
       echo   
'<tr><td>ICQ:</td><td><input type="text" name="icq" size="50" value="'.$result['icq'].'"<br></td></tr>';
       echo   
'<tr><td>Homepage:</td><td><input type="text" name="home" size="50" value="'.$result['home'].'"><br></td></tr>';
       echo   
'<tr><td>E-Mail:</td><td><input type="text" name="email" size="50" value="'.$result['email'].'"><br></td></tr>';
       echo   
'<input type="hidden" name="benutzername" value="'.$_GET['edit'].'"><br>';
       echo   
'<tr><td></td><td><input type="submit" name="senden" value="Senden">&nbsp;&nbsp;<input type=button value="Zur&uuml;ck" onClick="history.back()"></td></tr>';

   echo 
'</table>';   
  echo 
'</form>';
echo 
'</div>';    
  
      

      
      
/***************************************************************************************************************/         

if (isset($_POST['update']))
  {
        
$anfrageart "UPDATE userdaten SET 
                              vname       = '$vname',
                              nname       = '$nname',
                              benutzername= '$benutzername',
                              anschrift   = '$anschrift',
                              plz         = '$plz',
                              ort         = '$ort',
                              telefon     = '$telefon',
                              icq         = '$icq',
                              home        = '$home',
                              email       = '$email' WHERE benutzername = 'benutzername'"
;                              

   
$ergebnis -> $db -> query($anfrageart); // Senden an Dabenbank

     
if ($ergebnis -> affected_rows 0)
      {
        echo 
$ergebnis -> affected_rows." Daten wurden geändert!<br>";
      }
     else
      {
       echo 
"Keine Datensätze gefunden!<br>";
      }
 
 
  }      
      
      
$db -> close(); //  datenbank geschlossen.

?>

Danke schon mal im Vorraus.
Mit Zitat antworten
  #2  
Alt 26.05.2009, 19:18:29
Benutzerbild von rarios
rarios rarios ist offline
Member
 
Registriert seit: Jun 2006
Beiträge: 655
AW: Benutzerdaten auslesen und ändern

---> if (isset($_POST['update']))

Wo ist in Deinem Script denn ein Feld mit dem Namen update?
Immerhin überprüfst Du ja mit der o.g. Zeile, ob die globale Variable $_POST['update'] vorhanden ist.

Und da sie es nicht ist, und auch beim klicken von Senden nicht erstellt wird, passiert folglich auch rein gar nichts.
__________________
Liebe Grüße

Geändert von rarios (26.05.2009 um 19:20:15 Uhr)
Mit Zitat antworten
  #3  
Alt 26.05.2009, 20:50:35
TRC120 TRC120 ist offline
Anfänger
 
Registriert seit: May 2009
Alter: 59
Beiträge: 25
AW: Benutzerdaten auslesen und ändern

@ rarios

Danke, aber wo oder wie muss ich das einbinden ?
Wie gesagt, Lerne php erst seit 4 Wochen.
Mit Zitat antworten
  #4  
Alt 26.05.2009, 21:11:43
Benutzerbild von rarios
rarios rarios ist offline
Member
 
Registriert seit: Jun 2006
Beiträge: 655
AW: Benutzerdaten auslesen und ändern

Wenn ich mir so Deinen Quelltext angucke, weiß ich nicht wo ich anfangen soll...
Du solltest unbedingt mit error_reporting(E_ALL); am Anfang Deines Scriptes arbeiten.
Das hilft schon einmal etwas.
Ist das ganze nur ein Teil eines Scriptes?
Ansonsten bemängele ich den Teil ab
// ende if klammer send button.
Dort ist ein Formular, was genutzt wird, um neue Einträge zu erstellen. Gleichzeitig werden aber schon, bzw. es sollen jedenfalls durch $result[...] aktuelle Daten im Formular stehen. Eine Definition von $tesult erkenne ich in Deinem Script nirgends.
Das fehlerhafte Formular wird dann an das Script übergeben und ein neuer Eintrag erstellt. Ein Button zum Editieren bzw. zum Speichern der Editierungen gibt es aber nicht, wozu auch immerhin fehlt jegliches Edit-Formular. Im Grunde kannst du den Teil ab if (isset($_POST['update'])) komplett weglassen, alle $result Variablen löschen, und dann hast Du ein Script, dass in eine Datenbank Einträge schreibt. Mehr aber auch nicht.
__________________
Liebe Grüße
Mit Zitat antworten
  #5  
Alt 26.05.2009, 21:27:58
TRC120 TRC120 ist offline
Anfänger
 
Registriert seit: May 2009
Alter: 59
Beiträge: 25
AW: Benutzerdaten auslesen und ändern

Naja, das sollte eigentlich nur der Teil (script) sein, der eben die Daten aus der DB ausliest, sie in einen Formular anzeigt, und man sie da auch ändern und wieder abspeichern kann.
Ich stehe zur zeit komplett daneben,
Mit Zitat antworten
  #6  
Alt 27.05.2009, 19:44:14
TRC120 TRC120 ist offline
Anfänger
 
Registriert seit: May 2009
Alter: 59
Beiträge: 25
AW: Benutzerdaten auslesen und ändern

Hallo

Habe jetzt das Script verändert, jedoch wird nichts in die DB upgedatet.

PHP-Code:
<?php
 session_start
();

// Prüfen, ob Benutzer korekt eingeloggt ist,
// durch Prüfen ob Session-Variable existiert

 
if (isset ($_SESSION['berechtigt']) == false)
 {
?>
  <meta http-equiv="refresh" content="0;URL=index.php?seite=login_inc"></meta>
<?php
  
}

 
$db = new MySQLi("localhost","root","","trc")
      or die(
'Derzeit kann keine Verbindung zur Datenbank hergestellt werden'); 
      
if (isset(
$_POST['senden']) == true)
{      

/***************************************************************************************************************/ 
        

        
$anfrageart "UPDATE userdaten SET 
                              vname       = 'vname',
                              nname       = 'nname',
                              benutzername= 'benutzername',
                              anschrift   = 'anschrift',
                              plz         = 'plz',
                              ort         = 'ort',
                              telefon     = 'telefon',
                              icq         = 'icq',
                              home        = 'home',
                              email       = 'email' WHERE benutzername = '$benutzername' AND passwort ='$passwort_md5'"
;                              

   
$ergebnis $db -> query($anfrageart); // Senden an Dabenbank

     
if ($db -> affected_rows 0)
      {
            echo 
$ergebnis -> affected_rows." Daten wurden geändert!<br>";
      }
     else
      {
       echo 
"Keine Datensätze gefunden!<br>";
      }  
      
}



    
 echo 
"<div class='profil'>";                  
   echo 
'<form method="post" action="">'
      echo  
'<h3>Profil ändern :</h3>';
       echo 
'<table width=100%>';          
 
       echo   
'<tr><td width=20%>Vorname:</td><td><input type="text" name="vname" size="50" value=""><br></td></tr>';
       echo   
'<tr><td>Nachname:</td><td><input type="text" name="nname" size="50" value=""><br></td></tr>';
       echo   
'<tr><td>Benutzername:</td><td><input type="text" name="benutzername" size="50" value=""><br></td></tr>';
       echo   
'<tr><td>Anschrift:</td><td><input type="text" name="anschrift" size="50" value=""><br></td></tr>';
       echo   
'<tr><td>PLZ:</td><td><input type="text" name="plz" size="50" value=""><br></td></tr>';
       echo   
'<tr><td>Ort:</td><td><input type="text" name="ort" size="50" value=""><br></td></tr>';
       echo   
'<tr><td>Telefon:</td><td><input type="text" name="telefon" size="50" value=""><br></td></tr>'
       echo   
'<tr><td>ICQ:</td><td><input type="text" name="icq" size="50" value=""><br></td></tr>';
       echo   
'<tr><td>Homepage:</td><td><input type="text" name="home" size="50" value=""><br></td></tr>';
       echo   
'<tr><td>E-Mail:</td><td><input type="text" name="email" size="50" value=""><br></td></tr>';
       echo   
'<tr><td></td><td><input type="submit" name="senden" value="Ändern">&nbsp;&nbsp;<input type=button value="Zur&uuml;ck" onClick="history.back()"></td></tr>';

   echo 
'</table>';   
  echo 
'</form>';
echo 
'</div>';    
  
  


/***************************************************************************************************************/         


 
      
      
$db -> close(); //  datenbank geschlossen.

?>
Mit Zitat antworten
  #7  
Alt 28.05.2009, 10:17:50
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Benutzerdaten auslesen und ändern

Wird die Datenbankabfrage denn überhaupt ausgeführt? Das kannst du ganz einfach durch eine Ausgabe in der Verzweigung testen.
Mit Zitat antworten
  #8  
Alt 28.05.2009, 11:34:58
TRC120 TRC120 ist offline
Anfänger
 
Registriert seit: May 2009
Alter: 59
Beiträge: 25
AW: Benutzerdaten auslesen und ändern

hallo xabbuh

Nach nochmaligem Umschreiben, kann ich Daten eingeben. Sobalt ich auf SENDEN klicke bekomme ich die Meldung Datensatz konnte nicht eingetragen werden! und Keine Datensätze gefunden! .
Jedoch wird in der Datenbank nichts verändert.

Hier mein neues Script:


PHP-Code:
<?php
 session_start
();

// Prüfen, ob Benutzer korekt eingeloggt ist,
// durch Prüfen ob Session-Variable existiert

 
if (isset ($_SESSION['berechtigt']) == false)
 {
?>
  <meta http-equiv="refresh" content="0;URL=index.php?seite=login_inc"></meta>
<?php
  
}

 
$db = new MySQLi("localhost","root","","trc")
      or die(
'Derzeit kann keine Verbindung zur Datenbank hergestellt werden'); 
      



if (isset(
$_POST['senden']) == true)
{
       
       
  
$anfrage "INSERT INTO 'userdaten' VALUES('','vname','nname','benutzername','anschrift','plz','ort','telefon','icq','home','email')"
                     
$vname        $_POST['vname'];
                     
$nname        $_POST['nname'];
                     
$benutzername $_POST['benutzername'];
                     
$anschrift    $_POST['anschrift'];
                     
$plz          $_POST['plz'];
                     
$ort          $_POST['ort'];
                     
$telefon      $_POST['telefon'];
                     
$icq          $_POST['icq'];
                     
$home         $_POST['home'];
                     
$email        $_POST['email'];
                     
  
$ergebnis $db -> query($anfrage); // Senden an Dabenbank

     
if ($db -> affected_rows 0)
      {
        echo 
"Neue Daten wurde gespeichert!<br>";
  
$tabellen_id $db -> insert_id// Aulesen des neu erstellten Autowertes.
      
}
  else
      {
        echo 
"Datensatz konnte nicht eingetragen werden!<br>";
      }     
 
      

/***************************************************************************************************************/ 


$anfrage "UPDATE userdaten SET vname='vname', nname='nname', benutzername='benutzername', anschrift='anschrift', plz='plz', ort='ort', telefon='telefon', icq='icq', home='home', email='email' WHERE benutzername='$benutzername'";
                              

   
$ergebnis $db -> query($anfrage); // Senden an Dabenbank

     
if ($db -> affected_rows 0)
      {
            echo 
$ergebnis -> affected_rows." Daten wurden geändert!<br>";
      }
     else
      {
       echo 
"Keine Datensätze gefunden!<br>";
      } 
      

 }  

/***************************************************************************************************************/      
    
 
echo "<div class='profil'>";                  
   echo 
'<form method="post" action="">'
      echo  
'<h3>Profil ändern :</h3>';
       echo 
'<table width=100%>';    
       
 
 
echo(
'<tr><td width=20%>Vorname:</td><td><input type="text" name="vname" size="50" value=""><br></td></tr>
      <tr><td>Nachname:</td><td><input type="text" name="nname" size="50" value=""><br></td></tr>
      <tr><td>Benutzername:</td><td><input type="text" name="benutzername" size="50" value=""><br></td></tr>
      <tr><td>Anschrift:</td><td><input type="text" name="anschrift" size="50" value=""><br></td></tr>
      <tr><td>PLZ:</td><td><input type="text" name="plz" size="50" value=""><br></td></tr>
      <tr><td>Ort:</td><td><input type="text" name="ort" size="50" value=""><br></td></tr>
      <tr><td>Telefon:</td><td><input type="text" name="telefon" size="50" value=""><br></td></tr>
      <tr><td>ICQ:</td><td><input type="text" name="icq" size="50" value=""><br></td></tr>
      <tr><td>Homepage:</td><td><input type="text" name="home" size="50" value=""><br></td></tr>
      <tr><td>E-Mail:</td><td><input type="text" name="email" size="50" value=""><br></td></tr>
      <tr><td></td><td><input type="submit" name="senden" value="Ändern">&nbsp;&nbsp;<input type=button value="Zur&uuml;ck" onClick="history.back()"></td></tr>'
);


   
   
   echo 
'</table>';   
  echo 
'</form>';
echo 
'</div>';    
  
  


/***************************************************************************************************************/         





 
      
      
$db -> close(); //  datenbank geschlossen.

?>

Geändert von TRC120 (28.05.2009 um 12:00:29 Uhr)
Mit Zitat antworten
  #9  
Alt 28.05.2009, 18:03:37
Benutzerbild von xabbuh
xabbuh xabbuh ist offline
SELFPHP Guru
 
Registriert seit: May 2003
Beiträge: 7.187
AW: Benutzerdaten auslesen und ändern

Steht irgendwas in $db->error?
Mit Zitat antworten
  #10  
Alt 29.05.2009, 13:43:55
Benutzerbild von rarios
rarios rarios ist offline
Member
 
Registriert seit: Jun 2006
Beiträge: 655
AW: Benutzerdaten auslesen und ändern

Zitat:
PHP-Code:

  $anfrage 
"INSERT INTO 'userdaten' VALUES('','vname','nname','benutzername','anschrift','plz','ort','telefon','icq','home','email')"
                     
$vname        $_POST['vname'];
                     
$nname        $_POST['nname'];
                     
$benutzername $_POST['benutzername'];
                     
$anschrift    $_POST['anschrift'];
                     
$plz          $_POST['plz'];
                     
$ort          $_POST['ort'];
                     
$telefon      $_POST['telefon'];
                     
$icq          $_POST['icq'];
                     
$home         $_POST['home'];
                     
$email        $_POST['email']; 
Also entweder ich stehe gerade tierisch auf dem Schlauch, oder aber bei $anfrage fehlen jegliche Variablen. Die werden zwar da unter genannt, aber nicht zu $anfrage hinzugefügt.

Meiner Meinung nach müsste das so deklariert werden:
PHP-Code:
##### Muster: #####
$query "INSERT INTO `".$table."` (".$rows.") VALUES (".$values.")"
Du lässt bei Dir $rows komplett weg und schreibst die field_names in VALUE rein. Da gehören aber, wie der Name schon sagt, Deine ganzen Werte rein.
__________________
Liebe Grüße

Geändert von rarios (29.05.2009 um 13:44:21 Uhr)
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Aus 2 Tabellen gleichzeitig auslesen, nur wie? Zippo1979 PHP Grundlagen 3 04.04.2007 11:45:12
Auslesen von PHP-Dateien wes2503 PHP Grundlagen 5 23.11.2006 04:14:56
session_encode in DB gespeichert - Daten richtig, auslesen aber falsch CThuy PHP für Fortgeschrittene und Experten 0 25.07.2004 00:38:34
Auslesen der Besucher-IP DT625 PHP für Fortgeschrittene und Experten 4 16.05.2004 00:47:46
letzten (Daten-)satz aus Array auslesen pfuchs PHP für Fortgeschrittene und Experten 2 12.08.2003 10:05:02


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:54:14 Uhr.


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


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