Jump to content

generate random image from database php


Recommended Posts

I'm trying to create a random image script that selects from an existing list of different users images within a database but i'm having no luck. Anyone knows of a way to do it?


Here's the code... 'rnprofile.php'



if (isset($_FILES["image"]["name"]))
{
$TempFile = $_FILES["image"]["tmp_name"];
$FolderName = 'images/'; // Setting the upload directory
$CurrentTime = time(); // Time of upload (UNIX)
$Filename = $user."_".$CurrentTime.".jpg"; // Filename of the file
$saveto = $FolderName.$Filename; // Will look something like"images/alex_1365249148.jpg"

//First debug

//echo "DEBUG ECHO:<br/>We're uploading the file named: ".$Filename."<br/>And we're putting it into: ".$saveto."<br/>END DEBUG ECHO";
//exit();



move_uploaded_file($_FILES["image"]["tmp_name"], $saveto);
$typeok = TRUE;


switch($_FILES["image"]["type"])
{
case "image/gif": $src = imagecreatefromgif($saveto); break;

case "image/jpeg": // Both regular and progressive jpegs
case "image/pjpeg": $src = imagecreatefromjpeg($saveto); break;

case "image/png": $src = imagecreatefrompng($saveto); break;

default: $typeok = FALSE; break;
}

if ($typeok)
{
list($w, $h) = getimagesize($saveto);
$max = 600;
$tw = $w;
$th = $h;

if ($w > $h && $max < $w)
{
$th = $max / $w * $h;
$tw = $max;
}
elseif ($h > $w && $max < $h)
{
$tw = $max / $h * $w;
$th = $max;
}
elseif ($max < $w)
{
$tw = $th = $max;
}

$tmp = imagecreatetruecolor($tw, $th);
imagecopyresampled($tmp, $src, 0, 0, 0, 0, $tw, $th, $w, $h);
imageconvolution($tmp, array( // Sharpen image
array(-1, -1, -1),
array(-1, 16, -1),
array(-1, -1, -1)
), 8, 0);
imagejpeg($tmp, $saveto);
log_image_upload($UserData['user_id'], $Filename, $saveto, $CurrentTime); // Logging the image upload into MySQL
imagedestroy($tmp);
imagedestroy($src);
}
}

echo <<<_END
<form method='post' action='rnprofile.php'
enctype='multipart/form-data'>
</br>
<h3>Upload your designs here:</h3><br />

Image: <input type='file' name='image' size='14' maxlength='32' />
<input type='submit' value='Upload design' />
</pre></form>
_END;

'rnfunctions.php'...



function log_image_upload($UserID, $Filename, $Location, $Time) {
//add in sanitization code in here for all variables being parsed.
mysql_query("INSERT INTO `images` (`user_id`, `location`, `filename`, `time`) VALUES ('$UserID', '$Location', '$Filename', '$Time')");

}

function showProfile($user) {

//$UserID = mysql_result(mysql_query("SELECT `user_id` FROM `rnprofiles` WHERE `user` = '$user'"), 0) or die(mysql_error());



$result=mysql_query("SELECT `user_id` FROM `rnprofiles` WHERE `user` = '$user'") or die(mysql_error());
if(mysql_num_rows($result) or die(mysql_error())) {
while($row = mysql_fetch_assoc($result)) {
$UserID = $row['user_id'];
}
} else {
echo "no rows found";
} $Query = mysql_query("SELECT * FROM `images` WHERE `user_id` = '$UserID'") or die(mysql_error());
while ($ImageData = mysql_fetch_assoc($Query)) {

echo '<p><a title="'.$user.'" class="fancybox" data-fancybox-group="gallery" href="'.$ImageData['location'].'"><img src="'.$ImageData['location'].'" border="1px" align="left" height="150" alt=""/></a></p>';// Display each image belonging to the user
}

$result = mysql_query("SELECT * FROM rnprofiles WHERE user='$user'") or die(mysql_error());

if (mysql_num_rows($result))
{
$row = mysql_fetch_row($result);
echo stripslashes($row[8]) . "<a><br clear=left /><br /></a>";

}

}

Thanks a lot in advance!

Link to comment
https://forums.phpfreaks.com/topic/277698-generate-random-image-from-database-php/
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.