Error with Font and imagettfbbox
Posted on
16th Feb 2014 07:03 pm by
admin
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
No comments posted yet
Your Answer:
Login to answer
290
17
Other forums
Help Import Animoto and Youtube
CAn someone help me urgently want to allow users on my website to import youtube/revver/dailymotion
About imagecopyresampled()
Hello,
I am looking to use this function to resize parts of an image to a fixed thumbnail siz
New to mysqli library - Multiple query problem
Greetings,
I am writing a batch program that executes 3 queries on a single page. Using mysql
'210010106140040100' == '210010106140040101'
Debugging this simple line of a PHP script
Code: if($a == $b){ }
I've found that with val
Creating a db with a query
Hello everyone.
I'm having troubles creating a db with a query.
I'm reading a book called PHP
SESSION question
I am building an application , a directory for auctions.
For SEO i made a script which copies a p
textfield unchanged
hi,
i want my form to know whether its textbox is unchange or not.
if($textbox == 'unchang
Something like an INI editor or a DelimitedText-Editor
Hi all,
Am very, very, very new to PHP and not sure if I should be posting this to a Javascri
Undefined index on my form
ok im getting Undefined index on this line.. print_r($_REQUEST['form']);
below is the full sc
How to set pass login name from htaccess to php
When the user logs into my members page via htaccess, I'd like to retain the username so that I can