kein bearbeiten möglich

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • kein bearbeiten möglich

    Hallo zusammen

    ich habe ein Script, mit dem ich projekte anzeigen lassen kann und durch den klick auf einen bearbeitungs-link detail daten ändern kann.
    Dies hat auch bisher ganz gut funktioniert aber seit dem ich von get auf post umgestellt habe(wegen länge in textfeld) funktioniert diese Bearbeitungsfunktion leider nicht mehr richtig.
    Wenn ich auf den Bearbeitungslink klicke, wird mir wieder die Projektübersichtsseite angezeigt und nicht die Detaildaten des jeweilgen Projektes. Wobei dies doch mit get Problemlos funktioniert hat.
    Danke für Eure Hilfe
    hier das Script:
    PHP-Code:
    <html>
    <link rel="stylesheet" href="css.css" type="text/css">

    <script language="javascript" type="text/javascript" src="tinymce/jscripts/tiny_mce/tiny_mce.js"></script>
    <script language="javascript" type="text/javascript">
    tinyMCE.init({
            width : "640",height : "480",
        mode : "textareas"
    });
    </script>

    <body>
    <div align="left">
    <h3>Kundendatenbank bearbeiten</h3>

    <table border='0'><td>
    <a href='p1.php' ><b>+</b>&nbsp;<span>Projekt eintrgaen</span></a> 
    <a href='p2.php' ><b>+</b>&nbsp;<span>Projekte anschauen</span></a> 
    <a href='index.php?area=admin' ><b>+</b>&nbsp;<span>Inhalt</span></a> 
    </td></table>

    <?
    //Verbindung herstellen
    include "sql.php";


    $clear =  (isset($_POST['clear'])) ? $_POST['clear'] : '' ;

    $pnr = (isset($_POST['pnr'])) ? $_POST['pnr'] : '' ;
    $edit = (isset($_POST['edit'])) ? $_POST['edit'] : '' ;
    $submit = (isset($_POST['submit'])) ? $_POST['submit'] : '' ;

    $anr = (isset($_POST['anr'])) ? $_POST['anr'] : '' ;
    $date1 = (isset($_POST['date1'])) ? $_POST['date1'] : '' ;
    $abe = (isset($_POST['abe'])) ? $_POST['abe'] : '' ;
    $date = (isset($_POST['date'])) ? $_POST['date'] : '' ;
    $aname = (isset($_POST['aname'])) ? $_POST['aname'] : '' ;
    $astat = (isset($_POST['astat'])) ? $_POST['astat'] : '' ;





    //Daten l&ouml;schen
    if($clear) mysql_query("DELETE FROM aufgabe WHERE anr=$clear",$db);

    // Daten &auml;ndern
    if ($edit) {
    if ($submit) {
    $sql = "UPDATE aufgabe SET pnr='$pnr', date='$date', date1='$date1', 
    aname='$aname', abe='$abe', astat='$astat' WHERE anr=$edit";
    $result = mysql_query($sql,$db);
    echo "sql:<? echo $sql ?>Daten f&uuml;r die ID ".$edit." wurden ge&auml;ndert";
    }
    else {
    $sql = "SELECT * FROM aufgabe WHERE anr=$edit";
    $result = mysql_query($sql,$db); 
    $data = mysql_fetch_array($result);
    ?>

    </td></tr></table>



    <form method="post" action="<? echo $_SERVER[PHP_SELF] ?>">


    <?php $anr=$data["anr"?> 
     <input type=hidden name="edit" value="<? echo $data["anr"] ?>"> 

     <input type=hidden name="pnr" value="<? echo $data["pnr"] ?>"> 

    Anfang<br>
    <input type="text" name="date" value="<? echo $data["date"] ?>" size="50">
    <br>

    Ende<br>
    <input type="text" name="date1" value="<? echo $data["date1"] ?>" size="50"><br>
    Aufgabe<br>
    <input type="text" name="aname" value="<? echo $data["aname"] ?>" size="50">
    <br>

    <td>Status</td>
    <td>
    <?php 

        $stat
    = array( 
    0=>"0%",
    1=>"10%",
    2=>"20%",
    3=>"30%",
    4=>"40%",
    5=>"50%",
    6=>"60%",
    7=>"70%",
    8=>"80%",
    9=>"90%",
    10=>"100%",

                        ); 
         
        

        echo 
    "<select style=\"border: 1px solid black; background-color: #006666; 
        color: #ffffff;\" name=\"astat\" size=\"1\">"


        foreach (
    $stat as $stat_id => $stat_name) { 
            echo 
    "<option value=\""$stat_id ."\""
            if ( 
    $data["astat"]== $stat_id ) { 
                echo 
    " selected"
            } 
            echo 
    ">"$stat_name ."</option>"
        } 

        echo 
    "</select>"

    ?> 
    Aufgabenbeschreibung:<br>
    <textarea name="abe" wrap="standard" cols="40" rows"5"><? echo $data["abe"] ?></textarea>
    <input type="submit" name="submit" value="&Auml;ndern">

    </form>


    <? exit; ?>


    <?
    }
    }
    //Daten auslesen



    ?>

    <?

    //Daten auslesen


    $sql = "SELECT * FROM aufgabe where pnr='$pnr' order by date desc";


    $result = mysql_query($sql,$db); 
    echo $sql;
    ?>


    <table border="1" cellspacing="0" cellpadding="3" align="center">
    <tr>
    <td><b>Anfang</b></td>
    <td><b>Ende</b></td>
    <td><b>Aufgabe</b></td>
    <td><b>Status</b></td>

    <td>&nbsp;</td>
    <td>&nbsp;</td>
    </tr>
    <? while ($daten = mysql_fetch_array($result)) { ?>
    <tr>
    <td><? echo $daten[date]; ?></td>
    <td><? echo $daten[date1]; ?></td>
    <td><? echo $daten[aname]; ?></td>
    <td><? echo $daten[astat]*10; ?>%</td>


    <td><a href="<? echo ''.$_SERVER[PHP_SELF].'?clear='.$daten[anr].'&pnr='.$pnr ?>" 
    onClick="return confirm('Wirklich Löschen?')">l&ouml;schen</a></td>
    <td><a href="<? echo ''.$_SERVER[PHP_SELF].'?edit='.$daten[anr].'&pnr='.$pnr ?>">bearbeiten</a></td>
    </tr>
    <? } ?>
    </div>
    </body>
    </html>

  • #2
    Mal gecheckt, welche Daten / Parameter überhaupt ankommen ?


    An mich bitte keine unaufgeforderten E-Mails senden (ausser ihr seid bereit geld zu zahlen, dann gerne )

    Kommentar


    • #3
      beim ech $sql bekomme ich nach dem klick auf bearbeiten:
      SELECT * FROM aufgabe where pnr='' order by date desc

      Also verschluckt das Script irgendwie das pnr.
      Wobei dieses echo $sql ja eigentlich in der Übersichtsansicht steht (also nach dem exit; in dem edit Bereich in den er ja eigentlich soll).
      Hoffe Ihr versteht mein Problem

      Kommentar


      • #4
        register_globals
        TBT

        Die zwei wichtigsten Regeln für eine berufliche Karriere:
        1. Verrate niemals alles was du weißt!


        PHP 2 AllPatrizier II Browsergame

        Kommentar


        • #5
          Wäre ggf besser die Var mit false als mit '' zu belegen. Denn unter prüfst du ja mit if($var) und eine $var='' dürfte isset == true bringen.
          PHP-Code:
          $clear =  (isset($_POST['clear'])) ? $_POST['clear'] : false ;
          ... 
          Gruss

          tobi
          Gutes Tutorial | PHP Manual | MySql Manual | PHP FAQ | Apache | Suchfunktion für eigene Seiten

          [color=red]"An error does not become truth by reason of multiplied propagation, nor does truth become error because nobody sees it."[/color]
          Mohandas Karamchand Gandhi (Mahatma Gandhi) (Source)

          Kommentar

          Lädt...
          X