please help whats wrong with this code? (line 76 is the middle one)
require("dbConfig.php");
$sql = 'SELECT * FROM dbUsers WHERE username='$_SESSION["valid_user"]'';
$r = mysql_query($sql);
please help whats wrong with this code? (line 76 is the middle one)
require("dbConfig.php");
$sql = 'SELECT * FROM dbUsers WHERE username='$_SESSION["valid_user"]'';
$r = mysql_query($sql);
Please concate your string
$sql = 'SELECT * FROM dbUsers WHERE username="'.mysql_real_escape_string($_SESSION["valid_user"]).'"';
Recommendations:
1.Learn to prevent from MySQL Injections: Good Link
2.Mysql extension is not recommended for writing new code. Instead, either the mysqli or PDO_MySQL extension should be used. More reading: PHP Manual
you missed .
in:
$sql = 'SELECT * FROM dbUsers WHERE username='$_SESSION["valid_user"]'';
should be:
$sql = "SELECT * FROM dbUsers WHERE username='".$_SESSION["valid_user"]."'";
Try this:
$sql = 'SELECT * FROM dbUsers WHERE username='.$_SESSION["valid_user"];
TRY THIS (you`ll prevent SQL injection if you sanitize user input):
<?php
require("dbConfig.php");
$sql = "SELECT * FROM dbUsers WHERE username='".filter_var(mysql_real_escape_string($_SESSION["valid_user"]),FILTER_SANITIZE_STRING)."'";
$r = mysql_query($sql);
?>
EDIT: Added mysql_real_escape_string() for escaping input string, however even this is not 100% efficient against SQL injection, as discussed here.