I keep getting an error that says "Warning: imagettfbbox() [function.imagettfbbox]: Could not find/open font in /home/a6079442/public_html/rebuild/includes/csi.php on line 48
Error in imagettfbbox function"
I am trying to include a captcha image in this form, and it just doesn't seem to be working. I've got csi.php included on FormToEmail.php
url: http://inferium.site11.com/rebuild/contactform.php
Here is my code for the form page:
Code: <?php
print_r($_POST);
session_start(); //check the captcha
if(!empty($_SESSION['sc'])&&$_SESSION['sc']==$_POST['sc']){unset($_SESSION['sc']); print 'captcha is right';} else {$valCheck=false;$appMessage='Sorry, you have provided an invalid security code';}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html class="embed firefox" xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>
want to advertise? contact us!
</title>
<!-- Meta Tags -->
<meta name="robots" content="noindex, nofollow, noarchive">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- CSS -->
<link rel="stylesheet" href="contactform/dynamic.css" type="text/css">
<link rel="stylesheet" href="contactform/theme.css" type="text/css">
<link rel="stylesheet" href="contactform/wufoo.css" type="text/css">
<!-- JavaScript -->
<script type="text/javascript" src="contactform/dynamic.js"></script>
</head><body id="public">
<div id="container">
<form class="wufoo topLabel page1" autocomplete="off" enctype="multipart/form-data" method="post" action="FormToEmail.php">
<div class="info">
<h2>want to advertise? contact us!</h2>
<div></div>
</div>
<ul>
<li id="fo1li108" class=" ">
<label class="desc" id="title108" for="Field108">
your name:
</label>
<div>
<input id="name" name="name" class="field text medium" maxlength="255" tabindex="1" type="text">
</div>
</li>
<li id="fo1li6" class=" ">
<label class="desc" id="title6" for="Field6">
your email:
</label>
<div>
<input id="email" name="email" class="field text large" maxlength="255" tabindex="2" type="text">
</div>
<p class="instruct" id="instruct6"><small>We won't share this with strangers.</small></p>
</li>
<li id="fo1li112" class=" ">
<label class="desc" id="title112" for="Field112">
your phone:
</label>
<div>
<input id="phone" name="phone" class="field text medium" maxlength="255" tabindex="3" type="text">
</div>
</li>
<li id="fo1li109" class=" ">
<label class="desc" id="title109" for="Field109">
name of your mgmt:
</label>
<div>
<input id="management" name="management" class="field text medium" maxlength="255" tabindex="4" type="text">
</div>
</li>
<li id="fo1li110" class=" ">
<label class="desc" id="title110" for="Field110">
cities your properties are located in:
</label>
<div>
<input id="property_locations" name="property_locations" class="field text medium" maxlength="255" tabindex="5" type="text">
</div>
</li>
<li id="fo1li1" class=" ">
<label class="desc" id="title1" for="Field1">
specific questions or needs:
<span id="req_1" class="req">*</span>
</label>
<div>
<textarea id="questions" name="questions" style="border:0px;background-color:#FFFFFF;" rows="2" cols="50" tabindex="6"></textarea>
</div>
<p class="instruct" id="instruct1"><small>This field is required.</small></p>
</li>
<li class=" ">
<img src="includes/csi.php?w=100&h=40&chr=5" alt="" />
<label class="desc">
please enter the code from above:
</label>
<input type="text" name="sc" id="sc" style="border:0px;background-color:#FFFFFF;" maxlength="255" />
</li>
<li class="buttons">
<input name="currentPage" id="currentPage" value="GI0jR8qooTIIfP2hij1KYssRL4qyfwuBe5cnwuBewqGlzjUSE=" type="hidden">
<input id="saveForm" name="saveForm" class="btTxt submit" value="submit your inquiry" type="submit">
</li>
<li style="display: none;">
<label for="comment">Do Not Fill This Out</label>
<textarea name="comment" id="comment" rows="1" cols="1"></textarea>
<input id="idstamp" name="idstamp" value="VuXFID/UrijtCYffVp7xRB3O98Q+v/DvyIxYt88ZyXM=" type="hidden">
</li>
</ul>
</form>
</div><!--container-->
<img id="bottom" src="contactform/bottom.png" alt="">
<script type="text/javascript">
__EMBEDKEY = "false"
</script></body></html>
Also, here is the code to csi.php:
Code:<?php
session_start();
class csi
{
public $font = 'mf.ttf';
public function generateCode($characters)
{
/* list all possible characters, similar looking characters and vowels have been removed */
$possible = '23456789bcdfghjkmnpqrstvwxyz';
$code = '';
$i = 0;
while ($i < $characters)
{
$code .= substr($possible, mt_rand(0, strlen($possible)-1), 1);
$i++;
}
return $code;
}
public function csi($width='120',$height='40',$characters='6')
{
$code = $this->generateCode($characters);
/* font size will be 75% of the image height */
$font_size = $height * 0.75;
$image = @imagecreate($width, $height) or die('Cannot initialize new GD image stream');
/* set the colours */
$background_color = imagecolorallocate($image, 255, 255, 255);
$text_color = imagecolorallocate($image, 20, 40, 100);
$noise_color = imagecolorallocate($image, 100, 120, 180);
/* generate random dots in background */
for( $i=0; $i<($width*$height)/3; $i++ )
{
imagefilledellipse($image, mt_rand(0,$width), mt_rand(0,$height), 1, 1, $noise_color);
}
/* generate random lines in background */
for( $i=0; $i<($width*$height)/150; $i++ )
{
imageline($image, mt_rand(0,$width), mt_rand(0,$height), mt_rand(0,$width), mt_rand(0,$height), $noise_color);
}
/* create textbox and add text */
$textbox = imagettfbbox($font_size, 0, $this->font, $code) or die('Error in imagettfbbox function');
$x = ($width - $textbox[4])/2;
$y = ($height - $textbox[5])/2;
imagettftext($image, $font_size, 0, $x, $y, $text_color, $this->font, $code) or die('Error in imagettftext function');
/* output captcha image to browser */
header('Content-Type: image/jpeg');
imagejpeg($image);
imagedestroy($image);
$_SESSION['sc'] = $code;
}
}
$width = isset($_GET['w']) ? $_GET['w'] : '120';
$height = isset($_GET['h']) ? $_GET['h'] : '40';
$characters = isset($_GET['chr']) && $_GET['chr'] > 1 ? $_GET['chr'] : '6';
$captcha = new csi($width,$height,$characters);
?>
Any help with this would be much appreciated
Is it a good practice to store user info. in sessions?
I am making a user class for my script which stores all the user information in sessions. It takes user id as parameter and gets the info from database and stores it in the session variable. I did
Buggy registration system
Hey, I just started scripting in PHP, and I ran into a few problems.Code: <?phpinclude('config.php');if
why is it over writing
Code: $filepaths[] = $_FILES['new_image'];foreach ($filepaths as $filepath){$imagename = strtolower($filepath['name']);$charref = substr($imagename, 0, strrpos($imagename, '.'));
Check if another session of the page is running?
I want to keep people from opening multiple tabs, or sessions of my Facebook app. Is it possible to check if a session is currently running of my app, like maybe using a cookie or something?
Intrastat Report Config in ECC 6.0 - goods Movement in EU countries
Colleagues, need ur help to understand the changes require in ECC 6 standard Report configuration settings.
php code generators
AllWhilst enjoying learning a new language i have come accross a number of free code generators out there to assist and save a lot of timecan anyone recommend what are the best free code generators
Coding Critique
I was hoping someone could take a second and look down my code and see if they see any problems with how it was written before I continue on.Code: <?php require
void* and sizeof()
Hi,Using void* and sizeof is it possible to get the value of the object ?I understand that dereferencing a void pointer is not directly possible. Is there a way (like casting) or something else to get
try catch error
I have been trying try catch but, I can't get it to work. The code opens a non existing file called "a"Code: private function fileOpenMethod($filePath,
File upload issues
Hi Guys,Can anyone see any issues with this code:Code: [Select]$setImage= 'productimages/' . date(U) . $HTTP_POST_FILES['setImage']['name'][0];copy($HTTP_POST_FILES['setImage']['tmp_name'][0],