PHP-help: Thumbnail from img in AD-ID

I’m working on a website where people can upload stuff and browse through the articles/ads.

Each ad contains a picture that you choose when you go to advertise.php.
It shows perfectly in showad.php?id=. I’ve also programmed so that you can just click the picture in the ad later on and it opens up in a new window with an original size (show.php)

Now, my thought is on the search.php site that I should be able to link the picture FROM the corresponding ad and display it on the result-site next to the ad-name as a thumbnail. I will share the codes. My guess is that I should be able to take the same code from showad.php.

What do you guys think? :slight_smile:

search.php
[php] <?php
include(“connect.php”);

?>




”;
echo “”;
echo “”;
echo “”;
echo “”;
echo “”;
echo “”;
}

//echo $sql;

?>

Search: Category: All! <?php
                          $sql = "SELECT * FROM category";
                          $result = mysql_query($sql);
                          while($row = mysql_fetch_array($result)){ 
                              echo "<option value=\"" . $row["catID"] . "\">" . $row["catName"] . "</option>\n";
                          }
                          $sql="";
                          ?>
          </select></td>
          <th align="right">City:</th><br />
          <td><select name="city">
              <option value="">Whole country</option>
                          <?php
      
                          $sql = "SELECT * FROM city";
                          $result = mysql_query($sql); 
                          while($row = mysql_fetch_array($result)){ 
                              echo "<option value=\"" . $row["cityID"] . "\">" . $row["cityName"] . "</option>\n";
                          }
                          $sql="";
                          ?>
        </select></td>
        <td align="right"></td>
        <td>   <input type="submit" value="Submit" name="searchbutton" /></td>
    </form></tr></table>
    
    <table class="borderall">
    <tr>
    <th align="center" width="200" class="borderright">Object</th>
    <th align="center" width="100" class="borderright">Category</th>
    <th align="center" width="40" class="borderright">Price</th>
    <th align="center" width="100" class="borderright">Date</th>
    <th align="center" width="100">City</th>
    </tr>
    
    
    <?php
          
		$search =  !isset($_GET["search"]) ? '' : $_GET['search'];
       $cat = !isset($_GET["cat"]) ? '' : $_GET['cat']; 
       $city = !isset($_GET["city"]) ? '' : $_GET['city']; 
        
        $sql = "SELECT * FROM tblad, city, category WHERE tblad.catID=category.catID AND		    tblad.cityID = city.cityID";
                      
          if ($search!="")
           {
           $sql .= " AND Object LIKE '%{$search}%'  ";
           }
     
        if ($cat!="")
          {
           $sql .= " AND tblad.catID={$cat} ";
           }
     
        if ($city !="")
          {
           $sql .= " AND city.cityID={$city} ";
           }
     
      $sql .= " ORDER BY DateTime DESC"; 

echo “
”;

    $result = mysql_query($sql) or die(mysql_error()); 
    while($row = mysql_fetch_array($result)) {

echo “

” . $row[“Object”] . “” . “” . $row[“catID”] . “” . $row[“Price”] . “:-” . “” . $row[“DateTime”] . “” . $row[“cityName”] . “
[/php]

I also seem to have a problem in the SHOWAD.php where the cityID is shown rather than the cityName. If I choose cityID, the IDs are given (1,2,3 and so on), but when I specify that I want cityName outputted I get blank in that showing field

showad.php
[php]

<?php include("connect.php"); error_reporting(E_ALL ^ E_NOTICE); $aid = $_GET["id"]; if (is_numeric($aid)){ //header ("location:search.php"); } $sql= "SELECT tblad.*, category.catName, tblpic.picFile FROM tblad INNER JOIN category ON tblad.catID=category.catID LEFT JOIN tblpic ON tblad.AId=tblpic.AId WHERE tblad.AId=$aid "; $result=mysql_query($sql) or die(mysql_error()); $row=mysql_fetch_array($result); ?>




<?php $sql="SELECT * FROM tblpic WHERE tblpic.AId=$aid"; $result=mysql_query($sql) or die(mysql_error()); while($row=mysql_fetch_array($result)){ $max=400; $id=$row["PID"]; $height=$row["height"]; $width=$row["width"]; if ($height > $width && $height > $max){ $ratio = $height/$max; $height = $max; $width = $width/$ratio; } else if($width > $max) { $ratio = $width/$max; $width = $max; $height = $height/$ratio; } echo ""; }
	 $referer = $_SERVER['http_referer'];

	
	?>
  </tr>
<tr>
<td><center>
<?php if (basename ($referer) != "addad.php"){ ?>
<a href="<?php echo $referer; ?>" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image5','','pictures/back1.jpg',1)"><img src="pictures/back1.jpg" name="Image5" width="72" height="50" border="0" id="Image5" /></a>
<?php }?>
</td>
</tr>  
Object <?php echo $row["Object"];?>
Category: <?php echo $row["catName"];?>
Uploaded by: <?php echo $row["Name"];?>
Date: <?php echo $row["DateTime"];?>
Phone number: <?php echo $row["Phone"];?>
City: <?php echo $row["cityID"];?>
Zip: <?php echo $row["Zip"];?>
E-Mail: <?php echo $row["Email"];?>
Info about the object: <?php echo $row["Info"];?>
Price (usd): <?php echo $row["Price"] . ":-";?>
Picture (click to view in original size): sometext
[/php]

I was also thinking of creating a contact-the-seller e-mail form with a captcha.
I found these codes which I think are pretty good to go on, but I would like the recipient to be specific. I think if you somehow can link the recipient to the e-mail column.

Also I dont know, but the captcha isnt working. I get nothing showing. Dunno really

this is the mailto.php and it sends to vasplusCaptcha.php
[php]<?php
include(“connect.php”);
session_start();
ob_start();
ini_set(‘error_reporting’ , 1);

if(isset($_POST[“submitted”]) && $_POST[“submitted”] == 1)
{
//Read POST request params into global vars
$to_email = "[email protected]"; // Replace this email field with your email address or your company email address
$from_fullname = trim(strip_tags($_POST[‘fullname’]));
$from_email = trim(strip_tags($_POST[‘email’]));
$email_subject = 'TESTING CAPTCHA: '.trim(strip_tags($_POST[‘subject’]));
$email_message = nl2br(trim(strip_tags($_POST[‘message’])));
$security_code = trim(strip_tags($_POST[‘vpb_captcha_code’]));

//Set up the email headers
$headers      = "From: $from_fullname <$from_email>\r\n";
$headers   .= "Content-type: text/html; charset=iso-8859-1\r\n";
$headers   .= "Message-ID: <".time().rand(1,1000)."@".$_SERVER['SERVER_NAME'].">". "\r\n";   

if($from_fullname == "")
{
    $submission_status = '<div class="vpb_info" align="left">Please enter your fullname in the required field to proceed. Thanks.</div>';
}
elseif($from_email == "")
{
    $submission_status = '<div class="vpb_info" align="left">Please enter your email address in the required email field to proceed.</div>';
}
elseif(!preg_match("/^[_a-z0-9-]+(\.[_a-z0-9-]+)*@[a-z0-9-]+(\.[a-z0-9-]+)*(\.[a-z]{2,3})$/", $from_email))
{
    $submission_status = '<div class="vpb_info" align="left">Sorry, your email address is invalid. Please enter a valid email address to proceed. Thanks.</div>';
}
elseif($email_subject == "")
{
    $submission_status = '<div class="vpb_info" align="left">Please enter the subject of your message in the required field to proceed.</div>';
}
elseif($email_message == "")
{
    $submission_status = '<div class="vpb_info" align="left">Please enter your message in the required message field to proceed. Thanks.</div>';
}
elseif($security_code == "")
{
    $submission_status = '<div class="vpb_info" align="left">Please enter the security code in its field to send us your message. Thanks.</div>';
}
elseif(!isset($_SESSION['vpb_captcha_code']))
{
    $submission_status = '<div class="vpb_info" align="left">Sorry, the security code you provided was incorrect, try again.</div>';
}
else
{
    if(empty($_SESSION['vpb_captcha_code']) || strcasecmp($_SESSION['vpb_captcha_code'], $_POST['vpb_captcha_code']) != 0)
    {
        //Note: the captcha code is compared case insensitively. If you want case sensitive match, update the check above to strcmp()
        $submission_status = '<div class="vpb_info" align="left">Sorry, the security code you provided was incorrect, try again.</div>';
    }
    else
    {
        $vasplus_mailer_delivers_greatly = @mail($to_email, $email_subject, $email_message, $headers);
                
        if ($vasplus_mailer_delivers_greatly) 
         {
            //Displays the success message when email message is sent
              $submission_status = "<div align='left' class='vpb_success'>Congrats $from_fullname, your email message has been sent successfully!<br>We will get back to you as soon as possible. Thanks.</div>";
         } 
         else 
         {
             //Displays an error message when email sending fails
              $submission_status = "<div align='left' class='vpb_info'>Sorry, your email could not be sent at the moment. <br>Please try again or contact this website admin to report this error message if the problem persist. Thanks.</div>";
         }
    }
}

}
?>

Contact Form
Please complete the form below to reach us...


Your Fullname:
" class="vpb_input_fields">


Email Address:
" class="vpb_input_fields">


Email Subject:
" class="vpb_input_fields">


Your Message:
<?php echo strip_tags($_POST["message"]); ?>


Security Code:

 

Can't read the above security code? Refresh


<?php echo $submission_status; ?>
 

[/php]

vaspluscaptcha.php
[php]<?php
session_start();

//You can do any necessary settings as you wish here
//If you reduce the width and height of the captcha here then you have to change it in the css file as well
$image_width = 280;
$image_height = 50;
$characters_on_image = 8;
$font = ‘pictures/MONOFONT.ttf’;

//The characters that can be used in the CAPTCHA code. Avoid confusing characters (l 1 and i for example)
$possible_letters = ‘23456789bcdfghjkmnpqrstvwxyz’;
$random_dots = 0;
$random_lines = 20;
$captcha_text_color=“ee432e”;
$captcha_noice_color = “ee432e”;

$code = ‘’;
$i = 0;
while ($i < $characters_on_image)
{
$code .= substr($possible_letters, mt_rand(0, strlen($possible_letters)-1), 1);
$i++;
}
$font_size = $image_height * 0.75;
$image = @imagecreate($image_width, $image_height);

/*Setting the background, text and noise colours here */
$background_color = imagecolorallocate($image, 255, 255, 255);

$arr_text_color = RGB_HEX($captcha_text_color);
$text_color = imagecolorallocate($image, $arr_text_color[‘red’],
$arr_text_color[‘green’], $arr_text_color[‘blue’]);
$arr_noice_color = RGB_HEX($captcha_noice_color);
$image_noise_color = imagecolorallocate($image, $arr_noice_color[‘red’],
$arr_noice_color[‘green’], $arr_noice_color[‘blue’]);

/*This generates the dots randomly strings in background */
for( $i=0; $i<$random_dots; $i++ )
{
imagefilledellipse($image, mt_rand(0,$image_width),
mt_rand(0,$image_height), 2, 3, $image_noise_color);
}

/*This generates lines randomly strings in background of image */
for( $i=0; $i<$random_lines; $i++ )
{
imageline($image, mt_rand(0,$image_width), mt_rand(0,$image_height),
mt_rand(0,$image_width), mt_rand(0,$image_height), $image_noise_color);
}

/*This creates a text box and add 6 letters code in it */
$textbox = imagettfbbox($font_size, 0, $font, $code);
$x = ($image_width - $textbox[4])/2;
$y = ($image_height - $textbox[5])/2;
imagettftext($image, $font_size, 0, $x, $y, $text_color, $font , $code);

/* Show captcha image in the page html page */
header(‘Content-Type: image/jpeg’);// defining the image type to be shown in browser widow
imagejpeg($image);//showing the image
imagedestroy($image);//destroying the image instance
$_SESSION[‘vpb_captcha_code’] = $code;

function RGB_HEX ($hexstr)
{
$int = hexdec($hexstr);
return array(“red” => 0xFF & ($int >> 0x10),“green” => 0xFF & ($int >> 0x8),“blue” => 0xFF & $int);
}
?>[/php]

No one? aff =/

You’re asking way to many questions in 1 topic.

I also seem to have a problem in the SHOWAD.php where the cityID is shown rather than the cityName. If I choose cityID, the IDs are given (1,2,3 and so on), but when I specify that I want cityName outputted I get blank in that showing field

[php]$sql= "SELECT tblad.*, category.catName, tblpic.picFile FROM tblad INNER JOIN category ON tblad.catID=category.catID LEFT JOIN tblpic ON tblad.AId=tblpic.AId WHERE tblad.AId=$aid[/php]

In your query above in the showad.php, you didn’t join it to your CITY table, that’s why you get blanks for cityName.

Sorry about that. I felt it was a minor question that didn’t need a thread.

I changed it from
[php]$sql= "SELECT tblad.*, category.catName, tblpic.picFile FROM tblad INNER JOIN category ON tblad.catID=category.catID LEFT JOIN tblpic ON tblad.AId=tblpic.AId WHERE tblad.AId=$aid
";[/php]
to
[php]$sql= “SELECT * FROM tblad, category, city, tblpic
where tblad.AId=tblpic.AId
AND tblad.catID=category.catID
AND tblad.cityID=city.cityID
and tblad.AId=$aid”;[/php]

It seems to be working properly now. Would you like me to post a new thread with the title of how to join several tables and columns?
Any ideas on the thumbnail part, by the way?

Take care ;D

I think simple thread are easier to understand, I get discourage when I have to work my way through a novel.

I’m glad you got your cityName showing up!!

You’re absolutely correct!
Thanks alot! :>

I would however like to address the issue from the first post about fetching a picture from the respective article to show as thumbnail. I’ll try to edit and remove everything from post 2 about the e-mail thingy. You’re correct, it takes a new thread as it will be easier to go back and forth with the communication ;p

I tried doing this to the search.php but nada!
[php]

<?php $search = !isset($_GET["search"]) ? '' : $_GET['search']; $cat = !isset($_GET["cat"]) ? '' : $_GET['cat']; $city = !isset($_GET["city"]) ? '' : $_GET['city']; $aid = $_GET["id"]; $sql = "SELECT * FROM tblad, city, category WHERE tblad.catID=category.catID AND tblad.cityID = city.cityID AND tblad.AId=tblpic.AId AND tblad.AId=$aid "; if ($search!="") { $sql .= " AND Object LIKE '%{$search}%' "; } if ($cat!="") { $sql .= " AND tblad.catID={$cat} "; } if ($city !="") { $sql .= " AND city.cityID={$city} "; } $sql .= " ORDER BY DateTime DESC"; echo "
"; $result = mysql_query($sql) or die(mysql_error()); while($row = mysql_fetch_array($result)) { echo ""; echo " " . $row["Object"] . "" . ""; echo "" . $row["catID"] . ""; echo "" . $row["Price"] . ":-" . ""; echo "" . $row["DateTime"] . ""; echo "" . $row["cityName"] . ""; echo ""; } //echo $sql; ?>

[/php]

Where is the code to show it as a thumbnail? I don’t see any HTML Image tags?

I’m currently just copy-pasting this one from showad.php
[php]<?php
$sql=“SELECT * FROM tblpic WHERE tblpic.AId=$aid”;
$result=mysql_query($sql) or die(mysql_error());
while($row=mysql_fetch_array($result)){
$max=400;
$id=$row[“PID”];
$height=$row[“height”];
$width=$row[“width”];
if ($height > $width && $height > $max){
$ratio = $height/$max;
$height = $max;
$width = $width/$ratio;
}
else if($width > $max) {
$ratio = $width/$max;
$width = $max;
$height = $height/$ratio;
}
echo "

sometext
";
}
	 $referer = $_SERVER['http_referer'];

	
	?>[/php]

I’m confused you lost me, I guess there’s to many un-related things going on in this thread.

Well all righty!
This is showad.php, a template for showing one of all the ads in the database.
[php]

<?php include("connect.php"); // Kopplar upp mot databasen ;p error_reporting(E_ALL ^ E_NOTICE); $aid = $_GET["id"]; if (is_numeric($aid)){ //header ("location:search.php"); } $sql= "SELECT * FROM tblad, category, city, tblpic where tblad.AId=tblpic.AId AND tblad.catID=category.catID AND tblad.cityID=city.cityID and tblad.AId=$aid"; $result=mysql_query($sql) or die(mysql_error()); $row=mysql_fetch_array($result); ?>



<?php $sql="SELECT * FROM tblpic WHERE tblpic.AId=$aid"; $result=mysql_query($sql) or die(mysql_error()); while($row=mysql_fetch_array($result)){ $max=400; $id=$row["PID"]; $height=$row["height"]; $width=$row["width"]; if ($height > $width && $height > $max){ $ratio = $height/$max; $height = $max; $width = $width/$ratio; } else if($width > $max) { $ratio = $width/$max; $width = $max; $height = $height/$ratio; } echo ""; }
	 $referer = $_SERVER['http_referer'];

	
	?>
  </tr>
  
<tr>
<td><center>
<?php if (basename ($referer) != "addad.php"){ ?>
<a href="<?php echo $referer; ?>" onmouseout="MM_swapImgRestore()" onmouseover="MM_swapImage('Image5','','pictures/back1.jpg',1)"><img src="pictures/back1.jpg" name="Image5" width="72" height="50" border="0" id="Image5" /></a>
<?php }?>
</td>
</tr>  
Object <?php echo $row["Object"];?>
Category: <?php echo $row["catName"];?>
Uploaded by: <?php echo $row["Name"];?>
Date: <?php echo $row["DateTime"];?>
Phone number: <?php echo $row["Phone"];?>
City: <?php echo $row["cityName"];?>
Zip: <?php echo $row["Zip"];?>
E-Mail: <?php echo $row["Email"];?>
Info about the object: <?php echo $row["Info"];?>
Price (usd): <?php echo $row["Price"] . ":-";?>
Picture (click to view in original size): sometext
[/php]

Should I create a new topic instead and report it for termination?

Sure create a new topic…

I’ll lock this one!

Sponsor our Newsletter | Privacy Policy | Terms of Service