Pert Form Datensatz bearbeiten

Habe es mir durchgesehen und bemerkt das es myreflexsql5 heißt aber naja jetzt kommen wieder meine Lieblingsfehler ;-)

Code:
Notice: Undefined index: Name in /var/kunden/webs/myreflex/TestDB/adminpanel2.php on line 16

Notice: Undefined index: Punktspiele in /var/kunden/webs/myreflex/TestDB/adminpanel2.php on line 17

Notice: Undefined index: Pokalspiele in /var/kunden/webs/myreflex/TestDB/adminpanel2.php on line 18

Notice: Undefined index: TestspieleTuniere in /var/kunden/webs/myreflex/TestDB/adminpanel2.php on line 19

Notice: Undefined index: ok in /var/kunden/webs/myreflex/TestDB/adminpanel2.php on line 30

Fatal error: Cannot use object of type stdClass as array in /var/kunden/webs/myreflex/TestDB/adminpanel2.php on line 40

Wäre ich nich so an PHP & MySQL interessiert hätte ich glaub schon alles hingeworfen.

Ich schau was ich jetzt vielleicht noch finde und sonst werde ich mich morgen Abend wieder dahinter klemmen, bin morgen den ganzen Tag auf einer Tagung....

Gruß -Hibi-
 
Hast du Globals eingeschalten, in deiner php.ini? Fakt ist die Variablen $Name, $Punktspiele, $Pokalspiele, $TestspieleTuniere wurden schon mal deklariert.:confused:
 
Mhm meinst du das?

Aus der phpinfo.php

Directive Local Value Master Value
auto_globals_jit On On
register_globals Off Off

Gruß Hibi
 
Das sieht schon mal gut aus, aber die Fehlermeldunegn besagen, das ein array erwartet wird, wo dem was zugefügt werden soll, aber kein Index dafür definiert wurde. Wenn du als einzige Datei die config includierst, dan poste die selbe mal.
 
Hier Bitteschön :-)

Man Man Man dacht nich das es sooo schwer sein kann :suspekt:

PHP:
<?php
    // config.php
    error_reporting(E_ALL);

    define('MYSQL_HOST',     'localhost');
    define('MYSQL_USER',     'myreflexsql5');
    define('MYSQL_PASS',     '*****PW*****');
    define('MYSQL_DATABASE', 'myreflexsql5');
?>
 
Mhm dann bin ich mla gespannt ob du doch noch einen fehler findest.

Habs mir heute glaub zum 6x durchgeschaut. Aber naja nix gefunden. -.-

Ich hoffe das klappt dann irgendwann auch, das ich die Spieler per Dropdown auswählen kann :-) Das wäre sehr Komfortabel.

Gruß -Hibi-
 
Huhu,

So habe es mal umgebaut und "mysql_fetch_array" statt "mysql_fetch_object" hingeschrieben.

Nun seh ich mein kleines Formular aber dennoch die Fehler drüber

Es wird auch der erste Datensatz angezeigt aber nur nicht der Name.
//EDIT: Name wird nun angezeigt, hatte das Form falsch geschriben ist ja <option></option>
Und ich würde ja gerne die Datensätze einzelln per Auswahl des Namens ansprechen.

Schaut es euch selber mal an: Adminpanel
Hier noch die Tabelle, mit ein paar Werten. Mhm irgendwie komme ich nich weiter und es schreibt auch nich die änderungen in die Datenbank.

Habe ich da irgendwas vergessen?

Hier der neue Code:

PHP:
<?php   
  error_reporting(E_ALL);  
  include 'config.php';  
      
  $conn = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS);
  if (!$conn) {
    die('keine Verbindung möglich: ' . mysql_error());
  }  
  // benutze Datenbank myreflexsql
$db_selected = mysql_select_db('myreflexsql5', $conn);
if (!$db_selected) {
    die ('Kann myreflexsql nicht benutzen : ' . mysql_error());
}

  /*Variablen zum Einfügen der Daten in die Datenbank*/   
      $Name                     =   $_POST['Name'];   
      $Punktspiele              =   $_POST['Punktspiele'];   
      $Pokalspiele              =   $_POST['Pokalspiele'];   
      $TestspieleTuniere        =   $_POST['TestspieleTuniere'];   

$aendern   =   "UPDATE Tore Set Name ='.$Name.', Punktspiele ='.$Punktspiele.', Pokalspiele  ='.$Pokalspiele.', TestspieleTuniere  ='.$TestspieleTuniere.' ";  

?>   
<form action="<?php echo $_POST["PHP_SELF"]; ?>" method="post">   
<?php   

         $abfrage = "SELECT * FROM Tore WHERE id = 1";   
         $result = mysql_query($abfrage);   
         while ($row = mysql_fetch_array($result))   
      if(isset($_POST))   
                    {   
                  echo '  

                                         <table>   
                     <tr>   
                           <td colspan="2"></td>   
                     </tr>   
                     <tr>   
                           <td class="content">Name</td>   
                           <td><select name="Name" id="Name" value=""> 
						   <option>'.$row['Name'].'</option> 
                           </select>  
                           </td>   
                     </tr>  
                     <tr>  
                       <td>Punktspiel</td>  
                       <td><input value='.$row['Punktspiele'].' class="fields" name="Punktspiel" /></td>  
                     </tr>  
                     <tr>  
                       <td>Pokalspiel</td>  
                       <td><input value='.$row['Pokalspiele'].' class="fields" name="Pokalspiel" /></td>  
                     </tr>  
                     <tr>  
                       <td>Testspiel/Tuniere</td>  
                       <td><input value='.$row['TestspieleTuniere'].' class="fields" name="TestspielTuniere" /></td>  
                     </tr>   
                     <tr>   
                       <td><input type="submit" value="Daten senden" class="button" name="ok"></td>   
                       <td><input type="reset" value="Daten löschen" class="button"></td>   
                        <br>   
                        <hr>     
                     </tr>   
               </table>  
               </form>  


                                         ';   
               }   
            else if($_POST['ok'])   
               {   
                        if(strlen($Name) <1) $error = 1;   
                        if(strlen($Punktspiele)  <1) $error = 1;   
                        if(strlen($Pokalspiele)  <1) $error = 1;   
                        if(strlen($TestspieleTuniere) <1) $error = 1;   

                if($error == 0)   
                     {   
                        //Variable zum Eintrag der Daten in die Datenbank   
                          $aendern   =   mysql_query($aendern) or die (mysql_error());   
                             echo "   
                                        <html>   
                                           <head>   
                                              <meta http-equiv='refresh' content='5; URL=http://www.my-reflex.net/TestDB/adminpanel2.php'>   
                                           </head>   
                                        <body>   
                                        Ihre Daten wurden erfolgreich in die Datenbank eingetragen   
                                          </body>   
                                        </html>   
                                        ";   
                     }   
                else   
                     {   
                          echo "Es ist ein Fehler aufgetreten, bitte alle formulare ausfühlen!";   
                     }   
               }   
?>
 
Zuletzt bearbeitet:
dein SQL-Statement hat noch einige Fehler.

ändere mal:
PHP:
$aendern   =   "UPDATE Tore Set Name ='.$Name.', Punktspiele ='.$Punktspiele.', Pokalspiele  ='.$Pokalspiele.', TestspieleTuniere  ='.$TestspieleTuniere.' ";

in
PHP:
$aendern   =   "UPDATE Tore Set Name ='".$Name."', Punktspiele ='".$Punktspiele."', Pokalspiele  ='".$Pokalspiele."', TestspieleTuniere  ='".$TestspieleTuniere."' ";

so ist es Syntaktisch richtig

was mir allerdings noch auffällt ist, das dein Update-befehl keinerlei Zuweisung hat.
Daher wird denke ich mal wenn der Befehl ausgeführt wird, alle Zeilen in der Tabelle Tore upgedatet. Hier fehlt wohl noch die WHERE Bedingung.
 
Zurück