PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   PHP Grundlagen (http://www.selfphp.de/forum/forumdisplay.php?f=12)
-   -   Wer findet den Fehler. Bin schon am verzweifeln :( (http://www.selfphp.de/forum/showthread.php?t=9022)

KiKoN 08.11.2004 13:07:55

Wer findet den Fehler. Bin schon am verzweifeln :(
 
Und wieder ein Prob.
Ich bau grad an der Edit funktion für mein Script. Nur gibt es mal wieder ein Prob.
Die Sachen die bearbeitet werden, werden net in die Datenbank eingetragen :(

Hier erstmal das Script:

PHP-Code:

<?php

$query 
mysql_query("SELECT * FROM downs WHERE ID = '$id'");
      
$id mysql_result ($query,$i,"ID");
      
$datei mysql_result ($query,$i,"File");
      
$sprache mysql_result ($query,$i,"sprache");

      
$seiten mysql_result ($query,$i,"d_seiten");
      
$bemerkung mysql_result ($query,$i,"d_bemerkung");


if(
$rang<1) { echo "Du hast keine Berechtigung Downloads zu editieren!"; } else {
 if(!
$id) { echo "Fehler, der Download konnte nicht editiert werden!"; } else {
  if(
$doedit==1) {
   
$update="UPDATE downs SET `File`='$file',`d_seiten`='$seiten',`sprache`='$sprache',`d_bemerkung`='$bemerkung' WHERE `ID`='$id'";
   if(
mysql_query($update,$conn)) { echo "Der Download wurde erfolgreich editiert!"; } else { echo "Fehler, der Download konnte nicht editiert werden!"; }
  } else {
   
$select="SELECT * FROM downs WHERE `ID`='$id'";
   
$select=mysql_query($select,$conn);
   if(
mysql_num_rows($select)!=1) { echo "Fehler, der Download konnte nicht gefunden werden!"; } else {
    
$ergebnis=mysql_fetch_array($select);



    echo 
"<form action=?page=downs_edit&doedit=1&id=".$id."  method='post'>";

    echo 
"<table>";

        echo 
"<tr>";
    echo 
"<td>File</td><td><input type='text' name='file' value="";
      $title = str_replace(" 
(--) ","'",$datei);
      echo "$title"'
></td>";
    echo "
</tr>";

        echo "
<tr>";
    echo "
<td>Seiten</td><td><input size=20 name=seiten value=".$seiten."></td>";
    echo "
</tr>";

        echo "
<tr>";
    echo "
<td>Sprache</td><td><input size=20 name=sprache value=".$sprache."></td>";
    echo "
</tr>";

        echo "
<tr>";
    echo "
<td>Bemerkung</td><td><textarea name=bemerkung rows=1 cols=50>".$bemerkung."</textarea></td>";
    echo "
</tr>";

    echo "
<tr><td> </td><td><input type='submit' value='Edit'></td>";
    echo "
</tr>";
    echo "
</form>";
    echo "
</table>";


   }
  }
 }
}
?>

Randinfo:
Ein Link schaut zum beispiel immer so aus: www.url.de/?page=downs_edit&id=507
die 507 ist die ID vom Download.

Wenn ich die seite aufrufe mit der Edit funktion werden hervoragend die Daten in den input Feldern angezeigt die abgefragt werden. Wenn ich jetzt was bearbeite und auf Edit klicke kommt auch die meldung das der Download erfolgreich editiert wurde.
Aber das wurd er nicht :(
Ich ruf die Datei auf und da steht immer noch das selbe. ich schau in die Datenbank und da steht auch immer noch das selbe.

Ich komm net mehr weiter... brauch hilfe :(

c4 08.11.2004 13:21:22

PHP-Code:

// statt dem...
else { echo "Fehler, der Downl..."; }

// ...schreibst Du das...
else { echo mysql_error($conn); } 

Sollte Dir die Ausgabe der Funktion nicht helfen, dann gib sie uns.

xabbuh 08.11.2004 13:24:53

Gleich in der ersten Zeile steht $query = mysql_query(...). Dieser Query wird auch dann ausgeführt, wenn du das Formular abschickst. Somit werden die Daten, die aus dem Formular kommen, von diesen Daten überschrieben und du änderst den Inhalt nicht.
Diesen Codeteil würde ich eher in den else-Zweig der if($doedit==1)-Abfrage packen, da die Ausführung dieses Codes ja nur erforderlich ist, wenn das Formular zum ersten Mal aufgerufen wird.

KiKoN 08.11.2004 13:28:32

Hab das gemacht was du gesagt hast, ist aber immer noch das selbe.
Und das war auch gar nicht der fehler in mein Script.
Wenn ich auf Edit klicke und somit den befehl rausgebe die Dateibank zu aktualisieren, kommt da die meldung das der Download erfolgreich editdiert wurde.
Aber weder später auf der Seite noch in der Datenbank werden die editierten Sachen angegeben, sondern die selben wie eh und je

c4 08.11.2004 13:35:46

Zitat:

Original geschrieben von _c_4_
PHP-Code:

// statt dem...
else { echo "Fehler, der Downl..."; }

// ...schreibst Du das...
else { echo mysql_error($conn); } 

Sollte Dir die Ausgabe der Funktion nicht helfen, dann gib sie uns.

Erst denken, dann überlegen...

xabbuh 08.11.2004 13:38:21

Zitat:

Original geschrieben von KiKoN
Hab das gemacht was du gesagt hast, ist aber immer noch das selbe.
Und das war auch gar nicht der fehler in mein Script.
Wenn ich auf Edit klicke und somit den befehl rausgebe die Dateibank zu aktualisieren, kommt da die meldung das der Download erfolgreich editdiert wurde.
Aber weder später auf der Seite noch in der Datenbank werden die editierten Sachen angegeben, sondern die selben wie eh und je

Hast du mal das ausprobiert, was ich geschrieben habe?

KiKoN 08.11.2004 13:44:05

Zitat:

Original geschrieben von xabbuh
Hast du mal das ausprobiert, was ich geschrieben habe?
Ah nein zuerst nicht^^"
hab dein beitrag gar nicht mehr gelesen, weil du den wohl grade geschrieben hast, als ich mein geschrieben habe.
Jedenfalls hab ich das jetzt mal ausprobiert und es funzt jetzt :)
Vielen dank nochmal :))


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:28:40 Uhr.

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