text in textarea problem

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

  • #16
    ach nix geht, ich blick das nicht.
    Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )

    Kommentar


    • #17
      du hast doch bestimmt schon dir richtigen threads gefunden. oder?

      eingabe via form:

      - prüfen auf get_magic_quotes_gpc()
      - bei 'aktiviert' (1) einfach stripslashes() machen.

      speichern in die db:

      - mysql_escape_string() anwenden

      laden aus der db:

      - prüfen auf get_magic_quotes_runtimes()
      - bei 'aktiviert' (1) einfach stripslashes() machen.

      ausgeben von daten:

      - verwenden von htmlentities()


      jetzt sollte es aber klarer sein. oder?

      wenn nicht, kann ich dir auch nicht mehr helfen.

      -----

      hier noch ne mini-test-datei zum spielen .....
      PHP-Code:
      <?php

          $tf 
      = isset($_POST['textfeld']) ? trim($_POST['textfeld']) : '';
          
      $ta = isset($_POST['textarea']) ? trim($_POST['textarea']) : '';

          
      $tf get_magic_quotes_gpc() ? stripslashes($tf) : $tf;
          
      $ta get_magic_quotes_gpc() ? stripslashes($ta) : $ta;

      ?>
      <form action="" method="post">
          <input type="text" name="textfeld" value="<?php echo htmlentities($tf); ?>"><br />
          <textarea name="textarea" rows="10" cols="50"><?php echo htmlentities($ta); ?></textarea><br />
          <input type="submit" name="" value="             test             ">
      <form>

      <pre>
      <?php
          print_r
      ($_POST);
      ?>
      </pre>

      <hr size="1">
      <?php
          show_source
      (__FILE__);
      ?>
      INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


      Kommentar


      • #18
        hab unter php.net geschaut

        PHP-Code:

        <?php
        $item 
        "Zak's Laptop";
        $escaped_item mysql_escape_string($item);
        printf("Escaped string: %s\n"$escaped_item);
        ?>
        o.k. dann hab ich versucht:

        $news = mysql_escape_string($news)
        zu machen hat nix gebracht..

        also nun versuch ich es nochmal:


        PHP-Code:

        if ($edit != '') {

            $sqlbefehl= "Select * FROM $tab_news where id = $edit";
            $ergebnis  = mysql_query($sqlbefehl, $serverid);
            $news = mysql_fetch_array ($ergebnis);

            $tnews = isset($news[news]) ? trim($news[news]) : '';
            $tnews=get_magic_quotes_runtime() ? stripslashes($tnews) : $tnews;


        <textarea name="news"  wrap="virtual" tabindex="2" ><?php echo htmlentities($tnews); ?>

        ist das so richtig ??


        PHP-Code:

        $tnews 
        = isset($tnews) ? trim($tnews) : '';
        $tnews get_magic_quotes_gpc() ? stripslashes($tnews) : $tnews;

        $sqlbefehl  =  "update $tab_news set news='$tnews' where id=$edit";
               if (!
        $ergebnis  mysql_query($sqlbefehl$serverid))
              echo 
        mysql_error($serverid); 
        sonst weiß ich auch nicht weiter
        Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )

        Kommentar


        • #19
          Original geschrieben von Kleinschmidt
          ist das so richtig ??
          das obere sah schon mal besser aus....

          Original geschrieben von Kleinschmidt
          sonst weiß ich auch nicht weiter
          ich auch nicht...

          aber du hast mysql_escape_string() beim updaten vergessen. auch solltest du vars NIEMALS direkt in einen string schreiben.
          PHP-Code:
          $sqlbefehl  =  "update ".$tab_news." set news = '".mysql_escape_string($tnews)."' where id = ".(int)$edit
          INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


          Kommentar


          • #20
            oh gott das wird ja immer schlimmer ...


            was hab ich den bei dem oberen falsch gemacht?

            - prüfen auf get_magic_quotes_gpc()
            - bei 'aktiviert' (1) einfach stripslashes() machen.


            PHP-Code:
            $tnews = isset($news[news]) ? trim($news[news]) : '';
            $tnews=get_magic_quotes_runtime() ? stripslashes($tnews) : $tnews
            kann mir nur denken das man trim doch nur beim eintargen in die db macht oder abfragt ?

            ???


            und bei dem

            PHP-Code:
            $sqlbefehl  =  "update ".$tab_news." set news = '".mysql_escape_string($tnews)."' where id = ".(int)$edit
            hab den String ja nur für hier gekürzt da ja der ganze

            PHP-Code:

            $sqlbefehl  
            =  "update $tab_news set titel='$titel',news='$news',time='$zeit',kategorie='$kategorie',name='$name',allowkom='0', newsformat='html',pdf='$pdf_alt' where id=$edit";
                   if (!
            $ergebnis  mysql_query($sqlbefehl$serverid))
                  echo 
            mysql_error($serverid); 
            zu lang ist

            habs jetzt so gemacht

            PHP-Code:

            $sqlbefehl  
            =  "update $tab_news set titel='$titel',news='".mysql_escape_string($tnews)."',time='$zeit',kategorie='$kategorie',name='$name',allowkom='0', newsformat='html',pdf='$pdf_alt' where id=$edit";
                   if (!
            $ergebnis  mysql_query($sqlbefehl$serverid))
                  echo 
            mysql_error($serverid); 
            hab alles hochgeladen und ausprobiert ... keine änderung...
            Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )

            Kommentar


            • #21
              ich habe keine lust mehr dir zu helfen, wenn du weiterhin meine ratschläge nicht annimmt und/oder total falsch umsetzt. sorry, aber das kann ich mir sparen.
              INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


              Kommentar


              • #22
                oh man was soll ich den machen, ich kenn mich nun mal nicht so gut aus!

                und das skript was ich habe is scho ziehmlich lang und komplex .
                Und ich hab es nicht programiert, ich änder nur sachen daran.


                Ich dank dir trotzdem für deine große hilfe.


                wenn trotzdem ein auge auf das komplette skript werfen wilst hier :
                Angehängte Dateien
                Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )

                Kommentar


                • #23
                  Original geschrieben von Kleinschmidt
                  wenn trotzdem ein auge auf das komplette skript werfen wilst hier :
                  nein. will ich nicht.

                  schliesslich bist du auch nicht in der lage mal eben das extra für dich
                  gepostete mini-script oben mal zu testen, und damit zu spielen.
                  für sich betrachtet und NICHT IN DEINEM CODE.

                  ausserdem kannst du auf gleicher weise mal ein mysql-dummy machen.

                  desweiteren kotzt es mich an, dass du noch nicht einmal in der lage
                  bist, mysql_escape_string() auf ALLE string richtung DB anzuwenden.
                  desweiteren hast du immer noch alle variablen in einem string direkt drin.

                  wenn du also noch nicht einmal die minimalsten ansätze hast, die
                  gegebenen tipps umzusetzen, kann/werde ich dir nicht mehr
                  helfen.
                  INFO: Erst suchen, dann posten![color=red] | [/color]MANUAL(s): PHP | MySQL | HTML/JS/CSS[color=red] | [/color]NICE: GNOME Do | TESTS: Gästebuch[color=red] | [/color]IM: Jabber.org |


                  Kommentar


                  • #24
                    O.K. du hast sicherlich recht.



                    Ich werd mir den ganzen thread nocham rein ziehen und nochmal von vorn anfangen deine Tips mir genauer anzuschauen.


                    ja und du hast auch recht ich hab nicht mit deinem extra geposteten Skript rumgespielt. ich hab gleich versucht die sachen umzusetzen.

                    ...

                    trotzallem danke ich dir für deine Hilfe.

                    gruss sascha
                    Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )

                    Kommentar


                    • #25
                      Hast du dir mal den editierten String ausgeben lassen, bevor du ihn in die DB schreibst?

                      Also
                      PHP-Code:
                      echo $_POST['news'];

                      // wobei es so aussieht als wenn du Register Globals On hast, 
                      // also reicht
                      echo $news
                      Mich stört auch irgendwie das wrap="virtual" in deiner Textarea.
                      Mach das mal weg (das gehört eh nicht zum HTML-Standard). Damit sollte dein Problem aber eigentlich nix zu tun haben ...

                      Kommentar


                      • #26
                        Hallo BlobBanana,


                        ja hab mir den String mal ausgeben lassen mit hilfe von Abraxax extra für mich geschrieben skriptes.

                        hab den Fehler gefunden, denk zwar das das unsauber ist aber ich hab das "wrap" und enctype... gelöscht seitdem läuft es wieder tadellos.

                        Aber trotzdem danke.
                        Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )

                        Kommentar

                        Lädt...
                        X