Ankündigung

Einklappen
Keine Ankündigung bisher.

Seltsames Problem mit switch

Einklappen

Neue Werbung 2019

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

  • Seltsames Problem mit switch

    Hi,

    habe heute ein script angefertigt das aber leider nicht funktioniert wegen er switch abfrage

    jedes mal zeigt php folgenden fehler:

    Parse error: syntax error, unexpected T_DEFAULT

    und hier der code:

    PHP-Code:
    <?PHP
    include("config.inc.php");
    switch (
    $_GET['action']) {
    case 
    "view":
    //Unterseite//
         
    break;
    case 
    "delete":
    //Unterseite//
         
    break;
    case 
    "new":
    echo 
    '<form action="nachrichten.php?action=new" method="post"><table width="500" border="0" cellpadding="0" cellspacing="0">';
    echo 
    '<tr><td align="left">An: </td><td><input type="text" value="'.$_GET['an'].'" name="an"></td></tr>';
    echo 
    '<tr><td align="left">Betreff: </td><td><input size="30" type="text" value="'.$_GET['betreff'].'" name="betreff"></td></tr>';
    echo 
    '<tr><td align="left"></td><td>Smilies</td></tr>';
    echo 
    '<tr><td align="left">Nachricht: </td><td><textarea cols="30" rows="10" name="inhalt"></textarea></td></tr>';
    echo 
    '<tr><td align="left"></td><td>BB-Codes</td></tr>';
    echo 
    '<tr><td align="left"></td><td><input type="checkbox" name="bbcode">BB-Codes Deaktivieren</td></tr>';
    echo 
    '<tr><td align="left"></td><td><input type="checkbox" name="smilies">Smilies Deaktivieren</td></tr>';
    echo 
    '<tr><td align="center"></td><td><br><input type="submit" value="Nachricht Absenden"></td></tr>';
    echo 
    '</table></form>';
    if (
    $_POST) {
    $con mysql_connect("$dbhost""$dbuser""$dbpass");
    mysql_select_db("$dbname");
    if (empty(
    $_POST['an'])) {
    echo 
    'Bitte geben Sie einen Usernamen ein!';
    } else if ((!
    preg_match('/^[a-zA-Z0-9-_]+$/i'$_POST['an']))) {
    echo 
    'Unerlaubte Zeichen im Username!';
    } else if (!
    mysql_fetch_array(mysql_query("SELECT id FROM cms_user WHERE nick = '".mysql_real_escape_string($_POST['an'])."'"))) {
    echo 
    'Dieser User existiert nicht!';
    } else {
    $row mysql_fetch_array(mysql_query("SELECT * FROM cms_user WHERE nick = '".mysql_real_escape_string($_POST['an'])."'"));
    $an $row['id'];
    $datum date("d.m.Y H:i:s");
    if (isset(
    $_POST['bbcode'])) {
    $bbcode "1";
    } else {
    $bbcode "0";
    }
    if (isset(
    $_POST['smilies'])) {
    $smilies "1";
    } else {
    $smilies "0";
    }
    mysql_query("INSERT INTO cms_pn SET an = '".mysql_real_escape_string($_POST['an'])."', von = '".$_SESSION['user']."', betreff = '".mysql_real_escape_string($_POST['betreff'])."', inhalt = '".mysql_real_escape_string($_POST['inhalt'])."', view = '1', datum = '".$datum."', bbcode = '".$bbcode."', smilies = '".$smilies."'") or die(mysql_error());
    echo 
    'Nachricht wurde Erfolgreich Versandt!';
    }
    mysql_close($con);
         break;
    default:
    echo 
    'index';
         break;
    }
    ?>
    Hoffe ihr findet den fehler

    MfG

  • #2
    Wenn du irgendeine Art von Einrückung vornähmest, fiele dir der Fehler sofort auf.
    Refining Linux: “[url=http://www.refining-linux.org/archives/65/Performing-push-backups-Part-1-rdiff-backup/]Performing Push Backups – Part 1: rdiff-backup[/url]”

    Kommentar


    • #3
      Das Problem ist nicht seltsam,
      du hast die {} erst im default-case geschlossen,
      nicht davor.

      PHP-Code:
      <?php
          
      if($_POST) {
       
          }
       
          break;
      default:
        echo 
      'Default? Standartmäßig eingerückt :)';
           break; 
      //brauch man hier nicht mehr, da kein nächster case kommen kann
      ?>
      Du solltest wirklich einrücken -.-
      Als Programmierer brauch ich eigentlich nur 3 Tastenkombinationen: Strg + C, Strg + V, und Strg+Z wenn ich merke, dass das Programm nicht so will, wie ich es gern hätte.

      Kommentar


      • #4
        Desweiteren würde ich dir empfehlen übersichtlicher zu coden.

        Ich würde keinen Code in dem ganzen switch schreiben sondern dort nur Dateien includen und den Code in die Dateien schreiben,das macht es dann alles übersichtlicher und Strukturierter.
        Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
        [URL]http://www.lit-web.de[/URL]

        Kommentar


        • #5
          Titel hätte auch noch konkreter ausfallen können.

          Kommentar

          Lädt...
          X