Parse error: syntax error, unexpected '}' Line: 20

Discussion in 'PHP' started by fmjames, Jun 15, 2011.

  1. #1
    Hi,

    Ive been looking at this script for AGES but cannot get it to work....

    Please could someone help?

    <h2>Add New Report</h2>
    <STYLE>
    .error {padding: 10px; color: #CC0000; font-weight: bold;}
    </STYLE>
    
    <?
    // Has form been submitted
    if ($_POST) {
       // Create empty error variable
       $msg = "";
    
    // put form data into variable variables
    foreach($_POST as $k => $v) {
       $v = trim($v) ;
       $$k = $v ;
    
    // check for data in fields
    if ($v=="") {
    $msg = "Please fill in the correct fields!"
    }
    }
    
    // if all data there build query
    if ($msg=="") {
       $insert = "INSERT INTO clanessc_highranks.tbl_demolog
       (ID, hr, ud, rb, ra, dat, time, reason)
       VALUES ('$ID', '$hr', '$ud', '$rb', '$ra', '$dat', '$time', '$reason')";
    
    // open db connection
    include 'includes/config.php';
    
    // execute query and check for success
    if (!mysqli_query($link, $insert)) {
       $msg = "Error Inserting Data";
    } else {
       $msg = "Report Successfully Added"; 
       // set vars to "" for next form input 
       $ID = $hr = $ud = $rb = $ra = $dat = $time = $reason "";
    }
    mysqli_close($link);
    }
    
    // print error msg or success msg
    echo "<div class=\"error\">$msg</div>";
    
    // if not submitted, create blank vars for form inputs
    inputs
    } else {
    $ID = $hr = $ud = $rb = $ra = $dat = $time = $reason "";
    }
    ?>
    
    <FORM METHOD="post" ACTION="<? echo
    $_SERVER['PHP_SELF'] ?>">
    <TABLE BORDER="1" CELLPADDING="5">
    <TR>
    <TH>ID:</TH>
    <TH>Highrank Username:</TH>
    <TH>Username Demoted:</TH>
    <TH>Before Demotion:</TH>
    <TH>Rank After Demotion:</TH>
    <TH>Date:</TH>
    <TH>Time:</TH>
    <TH>Reason:</TH>
    </TR>
    <TR>
    <TD><INPUT TYPE="text" NAME="ID" VALUE="<?
    echo $ID ?> /></TD>
    <TD><INPUT TYPE="text" NAME="hr" VALUE="<?
    echo $hr ?> /></TD>
    <TD><INPUT TYPE="text" NAME="ud" VALUE="<?
    echo $ud ?> /></TD>
    <TD><INPUT TYPE="text" NAME="rb" VALUE="<?
    echo $rb ?> /></TD>
    <TD><INPUT TYPE="text" NAME="ra" VALUE="<?
    echo $ra ?> /></TD>
    <TD><INPUT TYPE="text" NAME="dat" VALUE="<?
    echo $dat ?> /></TD>
    <TD><INPUT TYPE="text" NAME="time" VALUE="<?
    echo $time ?> /></TD>
    <TD><INPUT TYPE="text" NAME="reason" VALUE="<?
    echo $reason ?> /></TD>
    </TR>
    </TABLE>
    <BR/>
    <INPUT TYPE="submit" VALUE="Add To Database" />
    <INPUT TYPE="reset" VALUE="Cancel" />
    </FORM>
    PHP:
     
    fmjames, Jun 15, 2011 IP
  2. Brandon Sheley

    Brandon Sheley Illustrious Member

    Messages:
    9,721
    Likes Received:
    612
    Best Answers:
    2
    Trophy Points:
    420
    #2
    does it work if you remove the } at line 20 like the error says?
     
    Brandon Sheley, Jun 15, 2011 IP
  3. fmjames

    fmjames Peon

    Messages:
    12
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #3
    No its still says same and when i remove the other "}" it just throws more errors =[

    i downloaded php designer and tried to debug but to no avail
     
    fmjames, Jun 15, 2011 IP
  4. mron3

    mron3 Member

    Messages:
    27
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    26
    #4
    Yo code lacks a } in the source. Also use <?php instead of <?
     
    mron3, Jun 16, 2011 IP
  5. MyVodaFone

    MyVodaFone Well-Known Member

    Messages:
    1,048
    Likes Received:
    42
    Best Answers:
    10
    Trophy Points:
    195
    #5
    Here's your fixed code

    
    <h2>Add New Report</h2>
    <STYLE>
    .error {padding: 10px; color: #CC0000; font-weight: bold;}
    </STYLE>
    
    <?
    // Has form been submitted
    if ($_POST) {
       // Create empty error variable
       $msg = "";
    
    // put form data into variable variables
    foreach($_POST as $k => $v) {
       $v = trim($v) ;
       $$k = $v ;
    
    // check for data in fields
    if ($v=="") {
    $msg = "Please fill in the correct fields!";
    }
    }
    
    // if all data there build query
    if ($msg=="") {
       $insert = "INSERT INTO clanessc_highranks.tbl_demolog
       (ID, hr, ud, rb, ra, dat, time, reason)
       VALUES ('$ID', '$hr', '$ud', '$rb', '$ra', '$dat', '$time', '$reason')";
    
    // open db connection
    include 'includes/config.php';
    
    // execute query and check for success
    if (!mysqli_query($link, $insert)) {
       $msg = "Error Inserting Data";
    } else {
       $msg = "Report Successfully Added"; 
       // set vars to "" for next form input 
       $ID = $hr = $ud = $rb = $ra = $dat = $time = $reason ;
    }
    mysqli_close($link);
    }
    
    // print error msg or success msg
    echo "<div class=\"error\">$msg</div>";
    
    // if not submitted, create blank vars for form inputs
    } else {
    $ID = $hr = $ud = $rb = $ra = $dat = $time = $reason;
    }
    ?>
    
    <FORM METHOD="post" ACTION="<? echo $_SERVER['PHP_SELF'] ?>">
    <TABLE BORDER="1" CELLPADDING="5">
    <TR>
    <TH>ID:</TH>
    <TH>Highrank Username:</TH>
    <TH>Username Demoted:</TH>
    <TH>Before Demotion:</TH>
    <TH>Rank After Demotion:</TH>
    <TH>Date:</TH>
    <TH>Time:</TH>
    <TH>Reason:</TH>
    </TR>
    <TR>
    <TD><INPUT TYPE="text" NAME="ID" VALUE="<? echo $ID ?>" /></TD>
    <TD><INPUT TYPE="text" NAME="hr" VALUE="<? echo $hr ?>" /></TD>
    <TD><INPUT TYPE="text" NAME="ud" VALUE="<? echo $ud ?>" /></TD>
    <TD><INPUT TYPE="text" NAME="rb" VALUE="<? echo $rb ?>" /></TD>
    <TD><INPUT TYPE="text" NAME="ra" VALUE="<? echo $ra ?>" /></TD>
    <TD><INPUT TYPE="text" NAME="dat" VALUE="<? echo $dat ?>" /></TD>
    <TD><INPUT TYPE="text" NAME="time" VALUE="<? echo $time ?>" /></TD>
    <TD><INPUT TYPE="text" NAME="reason" VALUE="<? echo $reason ?>" /></TD>
    </TR>
    </TABLE>
    <BR/>
    <INPUT type="submit" value="Add To Database" />
    <INPUT type="reset" value="Cancel" />
    </FORM>
    
    PHP:
     
    MyVodaFone, Jun 16, 2011 IP
  6. WeTrackMedia

    WeTrackMedia Active Member

    Messages:
    46
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    91
    #6
    That is the correct code indeed, you beat me to it! :p
     
    WeTrackMedia, Jun 17, 2011 IP