dimanche 19 avril 2015

want to store and retrive data from database inclusing image, able to store image but unable to display it.isset() error

Followig are the files i have used.




  1. HTML form



    <html>
    <title>reg</title>
    <style type="text/css">
    body {
    background-color: rgb(200,200,200);
    color: white;
    padding: 20px;
    font-family: Arial, Verdana, sans-serif;}
    h4 {
    background-color: DarkCyan;
    padding: inherit;}
    h3 {
    background-color: #ee3e80;
    padding: inherit;}
    p {
    background-color: white;
    color: rgb(100,100,90);
    padding: inherit;}
    </style>

    <form method="POST" action="login_back.php" enctype="multipart/form-data"></br>
    &nbsp<font color="DarkCyan"> Choose a user name:</font> <input type="text" name="username">
    </br></br>
    &nbsp<font color="DarkCyan"> First name:</font> <input type="text" name="firstname"/>
    </br></br>
    &nbsp<font color="DarkCyan"> Last name:</font><input type="text" name="lastname"/>
    </br></br>
    &nbsp<font color="DarkCyan"> File: <input type="file" name="image"></font>
    </br></br>
    <input type="submit" value="Save and Proceed">
    </form>
    </html>



2 PHP file to store and retrieve data to and from database



<?php
#echo "<body style='background-color:rgb(200,200,200)'>";
session_start();
if( isset($_POST['username']) && isset($_FILES['image']) )
{
$_SESSION['username']=$_POST['username'];
$_SESSION['firstname']=$_POST['firstname'];
$lastname=$_POST['lastname'];
$file=$_FILES['image']['tmp_name'];
$image_size=getimagesize($_FILES['image']['tmp_name']);
if(!isset($file))
echo"please select an image";
else
{
$image_name=$_FILES['image']['name']; //grabing image name
$image_size=getimagesize($_FILES['image']['tmp_name']); //getting image size
}
echo "</br>";


#connection to db
mysql_connect("localhost","root","")or die(mysql_error());
mysql_select_db("wordgraphic")or die(mysql_error());



#checking the available username
$query = mysql_query("SELECT * FROM userdata WHERE username = '" . $_SESSION['username'] . "'" );
$ans=mysql_num_rows($query);
if ($ans > 0)
{
echo "Username already in use please try another.";

}

else if($image_size==FALSE)
{
echo"That's not an image.";

}

else
{
#Insert data into mysql

#1.Inserting user name & image into db
$sql="INSERT INTO userdata(username, firstname, lastname, image)VALUES('" . $_SESSION['username'] . "', '" . $_SESSION['firstname'] . "', '$lastname','$image')";
$result1=mysql_query($sql);

if($result1)
{
echo "</br>";
echo "Registration successful";
echo "</br>";

//displaying image
$lastid=mysql_insert_id();//get the id of the last record
echo "uploaded image is :";
echo "<img src='get.php?id=".$lastid."'>"; > this command has some mistake

}#if insertion into db successful
else
{
echo "Problem in database operation";
}
}# else block of unique username n img
}#end of isset
?>




  1. get. php, Additional file to output data, this file has been used in <img src=get.php?id=$lastid> and $_REQUEST is used in this file. The flow of control is not going through isset() creating problem.


    $image=mysql_query("SELECT * FROM userdata WHERE id=$mid") or die("Invalid query: " . mysql_error()); $image=mysql_fetch_assoc($image); $image=$image['image']; header("Content-type: image/jpeg"); echo $image; } else { echo"error"; } ?>


Aucun commentaire:

Enregistrer un commentaire