androidnews
 
Das sichere Download-Verzeichnis

Anzeige

Systemfehler beheben und Leistung optimieren

Oft reicht eine vollständige Systemprüfung aus, um Fehler ausfindig zu machen und zu beheben. Ihr System wird optimiert und Sie gewinnen Speicherplatz und Leistung.

Seite 2 von 2 ErsteErste 12
Ergebnis 11 bis 19 von 19
  1. #11
    Avatar von Sebi2020
    Sebi2020 ist offline Benutzer
    Registriert seit
    21.01.2006
    Beiträge
    68

    Beitrag Source Code:

    Hier ist mein Code:
    PHP-Code:
    <html>
    <head>
    <title>Namen hinzufügen</title>
    </head>
    <?php
    // kette aufspalten

    if (isset($_GET['arrayi'])) if ($_GET['state'] == true$liste explode(","$_GET['arrayi']);

    // FUNKTION array erstellen wenn nicht vorhanden
    function create_array() {
    if (!isset(
    $liste)) $liste = array();
    }
    // FUNKTION liste ausgeben

    function print_list() { ?>
    <div style="border:1px solid #000000;"> <?
    global $liste;
    $lcount count($liste); // elemente zählen
    for($i 0$i <= $lcount$i++) { //iterator
    echo $liste[$i]. '<br>'//akutelles element ausgeben
    if (lcount 0next($liste); //wenn lcount größer ist als 0 weitergehen im array
    ?>
    </div> <?
    }
    // wenn formular abgeschickt worden ist...
    if (isset($_GET['Senden'])) {
    if (!isset(
    $liste)) create_array(); //array erstellen wenn nicht vorhanden
    $liste[] = (string) $_GET['inhalt']; //element hinzufügen
    print_list();
    }
    elseif (isset(
    $_GET['Löschen'])) {
    unset(
    $arrstring);
    unset(
    $liste);
    unset(
    $i);
    $seite $_SERVER['PHP_SELF'];
    }
    global 
    $seite;
    if (isset(
    $_GET['Senden'])) {
    if (
    $liste 0) {
    $arrstring implode(","$liste);
    var_dump($liste);
    $state true;
    }
    else
    {
    $arrstring $liste['0'];
    $state false;
    var_dump($arrstring);
    }
    }
    echo <<<FORM
    <form action="" method="GET">
    <input style="border:none; border-bottom:1px dashed #000000;" type="text" size="10" name="inhalt" value=""><br>
    <input type="submit" name="Senden" value="Hinzufügen"> 
    FORM;
    if (isset(
    $_GET['Senden'])) {
    echo <<<FORM
    <input type="hidden" name="arrayi" value="$arrstring">
    <input type="hidden" name="state" value="
    $state">
    FORM;
    }
    echo <<<FORM
    </form><form action="$seite" method="GET">
    <input type="submit" name="Löschen" value="Löschen">
    </form>
    FORM;
    ?>


    Sebi2020
    > Mein Forum<


  2. #12
    Avatar von Christoph
    Christoph ist offline Administrator
    Registriert seit
    02.03.2007
    Beiträge
    128

    Standard AW: internal error 500

    Hallo Sebi - ich war mal so frei deinen code minimal umzuformtarien. Einen Syntaxfehler habe ich zwar nicht entdeckt aber den "echo <<<" stil solltets du nicht verwenden - das ist uralter krempel.

    Desweiteren solltest du Ausgabe und Verarbeitung strikt trennen - dein script ist zwar nur 70 Zeilen lang aber man sieht nicht wirklich durch was du da machen willst. Ein guter Grundsatz wäre "Kein echo oder Print innerhalb von Funktionen".
    Ausserdme steigt die übersichtlichkeit wnen du nur einen großen PHP-Block hast und dafür nur wenige kleine innehralb des HTML-Teils (poor man's template).

    Sowas wie "global $seite;" ist auch schlecht - versuche lieber mit Funktionsparametern zu arbeiten.
    Gut ist, dass du auf GET_Variablen mittels $_GET zugreifst und nicht register globals verwendest.

    Dein Weg hat grade erst begonnen - Achte auf den Stil - ohne Stil kein Erfolg.

    Grüße
    Christoph

    PHP-Code:
    <html>
    <head>
    <title>Namen hinzufügen</title>
    </head>
    <?php

    // kette aufspalten

    if (isset ($_GET['arrayi']))
        if (
    $_GET['state'] == true)
            
    $liste explode(","$_GET['arrayi']);

    // FUNKTION array erstellen wenn nicht vorhanden
    function create_array() {
        if (!isset (
    $liste))
            
    $liste = array ();
    }
    // FUNKTION liste ausgeben

    function print_list() {
    ?>

    <div style="border:1px solid #000000;">

    <?php
        
    global $liste;
        
    $lcount count($liste); // elemente zählen
        
    for ($i 0$i <= $lcount$i++) { //iterator
            
    echo $liste[$i] . '<br>'//akutelles element ausgeben
            
    if (lcount 0)
                
    next($liste); //wenn lcount größer ist als 0 weitergehen im array
        
    }
    ?>


    </div> <?php

    }

    // wenn formular abgeschickt worden ist...
    if (isset ($_GET['Senden'])) {
        if (!isset (
    $liste))
            
    create_array(); //array erstellen wenn nicht vorhanden
        
    $liste[] = (string) $_GET['inhalt']; //element hinzufügen
        
    print_list();
    }
    elseif (isset (
    $_GET['Löschen'])) {
        unset (
    $arrstring);
        unset (
    $liste);
        unset (
    $i);
        
    $seite $_SERVER['PHP_SELF'];
    }
    global 
    $seite;

    if (isset (
    $_GET['Senden'])) {
        if (
    $liste 0) {
            
    $arrstring implode(","$liste);
            
    var_dump($liste);
            
    $state true;
        } else {
            
    $arrstring $liste['0'];
            
    $state false;
            
    var_dump($arrstring);
        }
    }

    echo 
    '<form action="" method="GET">
    <input style="border:none; border-bottom:1px dashed #000000;" type="text" size="10" name="inhalt" value=""><br>
    <input type="submit" name="Senden" value="Hinzufügen">'
    ;

    if (isset (
    $_GET['Senden'])) {
        echo 
    '<input type="hidden" name="arrayi" value="$arrstring">
        <input type="hidden" name="state" value="$state">'
    ;
    }

    echo 
    '</form><form action="$seite" method="GET">
    <input type="submit" name="Löschen" value="Löschen">
    </form>'
    ;
    ?>

  3. #13
    Avatar von Sebi2020
    Sebi2020 ist offline Benutzer
    Registriert seit
    21.01.2006
    Beiträge
    68

    Lächeln AW: internal error 500

    Danke! nur eine Frage taucht da bei mir auf wenn ich sachen in einfachen Anführungsstrichen schreibe:
    PHP-Code:
    echo '<form action="" method="GET"> 
    <input style="border:none; border-bottom:1px dashed #000000;" type="text" size="10" name="inhalt" value=""><br> 
    <input type="submit" name="Senden" value="Hinzufügen">'

    Werden dann die Variablen überhaupt noch als Variablen erkannt?
    ---
    Him und das mit PHP könnte an einer falschen php.ini oder conf. liegen.
    wenn ich das cgi modul verwende kommt nur ein weißter bildschirm wenn ich das script aufrufe.
    wenn ich das apache modul verwende kommt der oben genannte fehler.

    P.s. register globals wusste ich garnicht des es die (klasse?, funktion?, array?...) gibt.
    Hat des mit dem Super globalen arrays zu tun. ich mein $_GET ist ja eigentlich auch eins. Aber vielleicht hab ich da ja was nicht mitbekommen :-)


    Sebi2020
    > Mein Forum<


  4. #14
    Avatar von Christoph
    Christoph ist offline Administrator
    Registriert seit
    02.03.2007
    Beiträge
    128

    Standard AW: internal error 500

    Nein - Nicht bei einfache Anführungszeichen.

    Lies hier: http://www.php.net/manual/de/language.types.string.php

  5. #15
    Avatar von Sebi2020
    Sebi2020 ist offline Benutzer
    Registriert seit
    21.01.2006
    Beiträge
    68

    Beitrag AW: internal error 500

    aber weinn ich die variablen dann statt heredoc mit einfachen Anführungszeichen ausgebe werden die doppelten Anführungszeichen doch Automatisch escaped, oder?


    Sebi2020
    > Mein Forum<


  6. #16
    Avatar von Christoph
    Christoph ist offline Administrator
    Registriert seit
    02.03.2007
    Beiträge
    128

    Standard AW: internal error 500

    Nunja sie werdne nicht escaped, sie werden einfach als Text betrachtet. Willst du dennoch variablen benutzen musst du d den Syntax so verwenden:

    PHP-Code:
    print('Hallo welt ich heiße '.$meinname.' und wie heißen Sie?'); 

  7. #17
    Avatar von Sebi2020
    Sebi2020 ist offline Benutzer
    Registriert seit
    21.01.2006
    Beiträge
    68

    Frage AW: internal error 500

    ja desweg frage ich, ich mein kann man es dann mit den formularen dann überhaupt so anstellen:
    PHP-Code:
    if (isset ($_GET['Senden'])) { 
        echo 
    '<input type="hidden" name="arrayi" value="$arrstring"> 
        <input type="hidden" name="state" value="$state">'


    weil die doppelten anführungszeichen ja in einfachen stehen und somit die doch auch als text gewertet werden... dann müsste ich doch es so schreiben, oder?:
    PHP-Code:
    if (isset ($_GET['Senden'])) { 
        echo 
    '<input type="hidden" name="arrayi" value="' $arrstring .'"> 
        <input type="hidden" name="state" value="' 
    $state '">'



    Sebi2020
    > Mein Forum<


  8. #18
    Avatar von Christoph
    Christoph ist offline Administrator
    Registriert seit
    02.03.2007
    Beiträge
    128

    Standard AW: internal error 500

    Ja ganz genau so müsste es sein. Da zeigt dir ja schon das Syntax-Highlight

  9. #19
    Avatar von Sebi2020
    Sebi2020 ist offline Benutzer
    Registriert seit
    21.01.2006
    Beiträge
    68

    Beitrag AW: internal error 500

    Zitat Zitat von Christoph Beitrag anzeigen
    Ja ganz genau so müsste es sein. Da zeigt dir ja schon das Syntax-Highlight
    Deswegen frag ich, du hattest die variablen in einfache anführungsstrichen gesetzt. aber dann weiß ich des ja jetzt...
    ich frag mich nur warum dieser fehler dann kommt.


    Sebi2020
    > Mein Forum<


Seite 2 von 2 ErsteErste 12

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •