PHP - Formlareingabe funkt nicht immer

Dieses Thema PHP - Formlareingabe funkt nicht immer im Forum "Webentwicklung, Hosting & Programmierung" wurde erstellt von noex, 3. Okt. 2002.

Thema: PHP - Formlareingabe funkt nicht immer Hallo, ich habe ein Formular indem man selbst einen Eintrag ändern kann, alles noch kein Probelm, die Daten...

  1. Hallo,

    ich habe ein Formular indem man selbst einen Eintrag ändern kann, alles noch kein Probelm, die Daten vorhandenen Daten werden im Feld angezeigt und ich kann sie dort auch ohne Probleme ändern, nur wenn der Inhalt größer wird (so ab ca. 2000 Zeichen) kann ich auf ändern klicken so oft ich will, das Script beginnt nichteinmal zu arbeiten. Wenn ich den selben Text aber in phpmyadmin einfüge funktioniert dies anstandslos.

    Hier noch der Quelltext:

    <?php

    $DB_HOST = localhost;
    $DB_NAME = name der datenbank;
    $DB_USER = benutzer;
    $DB_PASS = passwort;


    mysql_connect($DB_HOST, $DB_USER, $DB_PASS)
    OR die(Konnte DB nicht erreichen!);
    mysql_select_db($DB_NAME)
    OR die(Konnte DB nicht erreichen);


    if (isset($submit)){
    // Formular wurde submittet -> Daten prüfen
    if ($page1 == ){
    $DatenOK = 0;
    $Fehler .= Sie haben keine Daten eingegeben!;
    }

    if (isset($SID)){
    // Überprüfung ob die ID existiert
    if (!is_numeric($SID)){
    $DatenOK = 0;
    $Fehler .= Fehler beim Herstellen der Verbindung, ungueltiges Argument!;
    }
    }

    if ($DatenOK){
    // Daten in DB eintragen
    if (isset($SID)){
    // Spruch-ID wurde übergeben
    // -> Spruch wird geändert
    mysql_query(sprintf('UPDATE tabelle
    SET page1=%s
    WHERE SID=%d',
    htmlspecialchars($page1),
    $SID));
    }
    else {
    // ansonsten neues Feld einfügen
    mysql_query(sprintf('INSERT INTO homepageverwaltung
    (page1)
    VALUES (%s)',
    addslashes($page1)));
    }

    // MySQL-Rückgabewert auswerten
    // Wenn OK -> Weiterleiten
    // sonst -> Fehlermeldung
    switch (mysql_errno()){
    case 0:
    // Alles OK
    header('Location: http://'.$HTTP_HOST.
    substr($PHP_SELF,0,strrpos($PHP_SELF,'/'))
    .'/datenok.htm');
    exit;
    continue;
    case 1062:
    // Eintrag bereits vorhanden
    $DatenOK = 0;
    $Fehler .= Daten wurden nicht geaendert;
    continue;
    default:
    // Sonstiger Fehler
    // -> Fehlermeldung ausgeben
    $DatenOK = 0;
    $Fehler .= MySQL: .mysql_errno().: .mysql_error();
    }
    }
    }
    elseif (isset($SID)){
    // es soll der Spruch SID geändert werden
    // -> bisherigen Werte laden
    $res= mysql_query(sprintf('SELECT *
    FROM homepageverwaltung
    WHERE SID=%d',
    $SID));

    if (!$row = mysql_fetch_array($res)){
    $DatenOK = 0;
    $Fehler .= Ungueltiges Argument;
    }
    $page1 = $row[page1];
    $t_page1 = $row[t_page1];
    }
    else {

    }
    ?>
    <html>
    <head>
    <title>test seite</title>
    </head>
    <body>
    <?php
    if (!$DatenOK){
    echo <h1>$Fehler</h1>;
    }
    ?>
    <table border=0 cellpadding=0 cellspacing=0 style=border-collapse: collapse bordercolor=#111111 width=95% id=AutoNumber1>
    <tr>
    <td width=50% bgcolor=#8BB0D6>
    <p align=left><a name=Meine Daten><b><font face=Verdana size=2><?php echo $t_page1; ?> bearbeiten</font></b></a></p>
    </td>
    <td width=50% bgcolor=#8BB0D6>
    <font size=1> </font></td>
    </tr>
    <tr>
    <td width=100% bgcolor=#E4EBF4 colspan=2>
    <p><form name=edit action=<?php echo $PHP_SELF; ?> method=GET>
    <center>
    <p>
    <textarea name=page1 rows=17 cols=65 style=color: #000000; border: 1px solid #8BB0D6; padding: 0; background-color: #EEF3F9><?php echo $page1; ?>

    Quelltext ende.


    Hat irgendjemand eine Idee, an was das liegen könnte?
     
  2. natürlich geht der Quelltext noch weiter, sorry.


    Quelltext fortsetztung:


    </textarea></p>
    <p>
    <?php
    if (isset($SID)){
    // zum Ändern auch die ID übergeben
    printf('<input type=hidden name=SID value=%d>',
    $SID);
    }
    ?> 
    <input type=submit name=submit value=Daten aktualisieren style=color: #000000; font-family: Verdana; font-size: 8pt; border-style: solid; border-width: 1; padding-left: 4; padding-right: 4; padding-top: 1; padding-bottom: 1; background-color: #EEF3F9></center>
    </form> </td>
    </tr>
    </table>
    </body>
     
  3. Hi,

    benutze für dein Formular mal method=POST und nicht GET ... koennte bereits der Fehler sein.
     
  4. jo wollte ich auch sagen und wie speicherst du die Daten in der Datenbank?
    Mit Varchar? oder mit fullext?
     
  5. War jetzt auf Urlaub, deshalb meine etwas verspätete Antwort.

    @JanaS: Werde ich sofort ausprobieren.

    @xeen: Meine Daten werden in diesem Fall mit TEXT gespeichert, da soweit ich weiß bei VARCHAR eine Begrenzung von 250 Zeichen habe.


    Danke, für eure Antworten.
     
  6. DANKE

    Das wars, mit POST funtkionierts....

    Von mir aus kann das Thema geschlossen werden.

    Danke nochmal.

    cu
    noex
     
  7. Hallo !,

    besteht die Möglichkeit bei Windows 7 die Logdaten bzw. die Logdaten bzw. Anmeldeinformationen zu löschen bzw. erst garnicht aufzeichnen zu lassen ? Wenn ja, wie kann ich das machen ?
    Hoffe mir kann wer helfen

    MfG
     
  8. Ja: Protokollierung unter Windows 7 Deaktivieren - deaktivieren, Windows 7 - Windows 7 - Windows 7 Tipps, Optimieren, Tricks
    Logs löschen: C:\WINDOWS\system32\wbem\Logs
     
Die Seite wird geladen...

PHP - Formlareingabe funkt nicht immer - Ähnliche Themen

Forum Datum
WMP Bug? Rechtsklick --> "Wiedergeben auf" aus dem Explorer funkt nicht, aus WMP aber schon Windows 7 Forum 1. Nov. 2016
Open Office Datei direkt versenden funktioniert nicht .... Windows 10 Forum 31. Okt. 2016
HDD funktioniert nicht. Windows 10 Forum 30. Sep. 2016
Tastatur funktioniert nicht richtig - aber nur beim Login Hardware 23. Sep. 2016
WLan funktioniert erst beim zweiten Start des Notebooks Windows 10 Forum 28. Aug. 2016