Tutorial :PHP: Can't find syntax error [closed]



Question:

Parse error: syntax error, unexpected $end in blah/blah/blah.php line 1

This is the error that I receive, with this code

<?php   include("db.php");    if (isset($_POST['username']) &&       isset($_POST['password']) &&       isset($_POST['email']))  {    //Prevent SQL injections    $username = mysql_real_escape_string($_POST['username']);    $email = mysql_real_escape_string($_POST['email']);      //Get MD5 hash of password    $password = md5($_POST['password']);      //Check to see if username exists    $sql = mysql_query("SELECT username FROM usersystem WHERE username = 'username'");      if (mysql_num_rows($s > 0))    {      die ("Username taken.");    }      mysql_query("INSERT INTO usersystem (username, password, email) VALUES ( '$username', '$password', '$email')")       or die (mysql_error()); echo "Account created.";  }  ?>  

I've already checked for unclosed brackets, that's not the problem. Also by troubleshooting with it, I've discovered that the include("db.php"); is causing the problem. When I comment it out, It loads the page just fine. However even when db.php is completely blank, just an empty .php file it still gives me the same error. I'm perplexed. Anyone have any ideas?

here is my db.php file, but honestly when I make db.php completely blank I get the same error. And I am saving it correctly.

<?php  session_start();  mysql_connect("localhost", "mydatabase", "mypassword");  mysql_select_db("ratherda_jetpackfandango");    function user_login ($username, $password)  {    //take the username and prevent SQL injections    //$username = mysql_real_escape_string($username);      //begin the query    $sql = mysql_query("SELECT * FROM user WHERE username = 'username' AND password = 'password' LIMIT 1");      //check to see how many rows were returned    $rows = mysql_num_rows($sql);      if ($rows<=0 )    {      echo "Incorrect username/password";    }    else    {      //have them logged in      $_SESSION['username'] = $username;    }      }  ?>  


Solution:1

You have a session_start in db.php thats not allowed there. It should be the first line in blah.php.

<?php    session_start();    require_once("db.php");  


Solution:2

Post your db.php file, the problem is obviously in there. Unexpected $end errors are usually a result of a missing curly brace, so check that file.


Solution:3

if (mysql_num_rows($s > 0))

to

if (mysql_num_rows($s) > 0)


Solution:4

In php $end errors typically means a missing } brace somewhere.


Solution:5

Perhaps your blah.php file is included from another blahblah.php file, and the error is there?


Solution:6

Are you sure that it's your db.php that get included? Could it be another db.php somewhere in your php-paths that get included instead? One way to check this is to rename your file to something more unique.


Note:If u also have question or solution just comment us below or mail us on toontricks1994@gmail.com
Previous
Next Post »