erstellen, editieren, löschen ?!

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

  • erstellen, editieren, löschen ?!

    hallo, ich habe ein problem mit meinem kleinen "adminscript" und zwar kann ich news erstellen, und bearbeiten, beim löschen ist allerdings der wurm drinne! rausnehme (kann ich nicht so gut erklären sorry)

    [b]der fehler muss irgendwo bei den inputs liegen, denn das löschen funktioniert wenn ich einen input

    ich glaube der fehler liegt im <form>, aber schaut am besten selbst

    PHP-Code:
    if ($do == "update"){

            echo 
    "
                <form action=\"
    $PHP_SELF\" method=\"post\">
                <input type=\"hidden\" name=\"do\" value=\"delete\">
                <input type=\"hidden\" name=\"do\" value=\"save\">
                <input type=\"hidden\" name=\"pid\" value=\"
    $pid\">

                <table width=\"100%\" align=\"center\">"
    ;

            if (
    $num 0){
                
                for (
    $i 0$i $num$i++){
                    
                    
    $entry explode("|#|"$lines[$i]);

            if (
    $entry[0] == $pid){
            
                
    $datum =  $entry[1];
                
    $message $entry[2];
                
    $subject $entry[3];}}}

                
    $jahr substr($datum,0,4);
                
    $monat substr($datum,4,2);
                
    $tag substr($datum,6,2);
                
    $datum "$tag/$monat/$jahr";

                
    $message str_replace("<br>","\n","$message");
                
    $message stripslashes($message);

            echo 
    "
                    <tr>
                        <td class=\"text\">
                        <input class=\"input_big\" type=\"text\" name=\"subject\" value=\"
    $subject\"> Topic
                        <br>
                        <textarea class=\"inbox_big\" name=\"message\">
    $message</textarea> Text
                        <br>
                        <br>
                        <input class=\"button\" type=\"submit\" value=\"löschen\">
                        <input class=\"button\" type=\"submit\" value=\"updaten\">
                        <input class=\"button\" type=\"reset\" value=\"korrigieren\">
                        <input class=\"button\" type=\"button\" value=\"zurück\" onClick=\"javascript:history.go(-1)\">
                        </td>
                    </tr>
                </table>
                </form>"
    ;
                
                } 
    gelöscht wird dann in dem teil

    PHP-Code:
            if ($do == "delete" ) {
                
            echo 
    "
                <table width=\"100%\" align=\"center\" cellspacing=\"1\" cellpadding=\"5\">
                    <tr>
                        <td class=\"text\">
                        <meta HTTP-EQUIV=REFRESH CONTENT=\"2;URL=
    $PHP_SELF?do=edit\">
                        Die Daten wurden gelöscht, bitte auf Weiterleitung warten...
                        </td>
                    </tr>
                </table>"
    ;

                for (
    $i 0$i $num$i++){
                    
    $entry explode ("|#|"$lines[$i]);
                    
            if (
    $entry[0] == $pid){
                
    $num--;
                
                for (
    $j $i$j $num$j++)
                    
    $lines[$j] = $lines[$j+1];
                    
                    }
                    
                    }
                    
                    } 
    ich wäre dankbar wenn jemand den fehler findet, ich tus leider nicht!
    Zuletzt geändert von seril; 24.09.2004, 10:10.
    ich bin ich...

  • #2
    Re: erstellen, editieren, löschen ?!

    du machst das zu kompliziert. Es gibt PHP-Array-Funktionen dafür. Anstatt:
    Original geschrieben von seril
    PHP-Code:
            if ($do == "delete" ) {
    ...
                for (
    $i 0$i $num$i++){
                    
    $entry explode ("|#|"$lines[$i]);
                    
            if (
    $entry[0] == $pid){
                
    $num--;
                
                for (
    $j $i$j $num$j++)
                    
    $lines[$j] = $lines[$j+1];
                    
                    }
                    
                    }
                    
                    } 
    probiere mal:
    PHP-Code:
    $key array_search($pid,$lines); // bestimme den Index
    if ($key// gefunden
       
    for ($i=$key;$i<count($lines)-1;$i++) // vorrücken und überschreiben
         
    $lines[$i]=$lines[$i+1];
    array_pop($lines); // letztes Element entfernen 
    vielleicht gibt es auch noch eine Funktion zum Entfernen eines bestimmten Element, aber mir fällt auf Anhieb nicht ein

    Kommentar


    • #3
      unset ($array[$key]) sollte es eigentlich auch machen...

      Kommentar


      • #4
        nix für ungut, aber das löschen funktioniert ja einwandfrei, nur leider nicht wenn ich beide inputs nutze!

        PHP-Code:
        <input type=\"hidden\" name=\"do\" value=\"delete\">
                    <input type=\"hidden\" name=\"do\" value=\"save\"> 
        ich sage ja, ich glaube das problem liegt meiner meinung nach im form teil!
        ich bin ich...

        Kommentar


        • #5
          was passiert denn, wenn du beide raus nimmst ?

          (ich denke mal, dann kommst du evtl. auch schon auf die Lösung!)

          gruss

          Kommentar


          • #6
            Ah, jetzt verstehe ich ... habe vorhin garnicht gesehen

            warum hidden-Feld? die Button unterschiedlichen Namen verpassen und if (isset($_POST['buttonname'])) abfragen. That's it

            Kommentar


            • #7
              danke, mit der variante von asp2php hats geklappt, allerdings nur als ich die hidden inputs drinne gelassen habe, keine ahnnung, hauptsache es klappt

              danke
              ich bin ich...

              Kommentar


              • #8
                Hä? Zeige mal dein Code, wie du abfragst, ob update oder delete vorliegt.

                Kommentar

                Lädt...
                X