digi duck Posted September 16, 2006 Share Posted September 16, 2006 Hi, i have a site (http://gamesigs.co.uk) where people create images with custom text on top. The image that is created goes to it's own php page and has a long url such as:[code]http://gamesigs.co.uk/creation.php?color=30&name=josh=75&y=200&angle=0&font=10&size=25&select=255,255,255&color_r=255&color_g=255&color_b=255&submit=Create+My+Sig![/code]This changes depeding on what settings you give the text.What i would like to do is to show this image on a html page. I cant specify a html header because i need to use a jpeg header. I think what i need to do is to give the url a name which is the same despite the differences in it and then put this name in a <img src> tag. How would this be done?Another way i thought of was by doing something along these lines:[code]<img src="http://gamesigs.co.uk/creation.php?<?php echo $_POST['color','name',etc...]?>"> [/code] Would this work and how should it look???Here is the code i've been using:[code]<?phpheader("Content-type: image/jpeg");$name = stripslashes($_GET['name']);$size = stripslashes($_GET['size']);$centre = stripslashes($_GET['centre']);$font = 'images/sig_maker/fonts/'.stripslashes($_GET['font']).'.ttf';$fontcolor['r'] = stripslashes($_GET['color_r']); // font color - RED$fontcolor['g'] = stripslashes($_GET['color_g']); // font color - GREEN$fontcolor['b'] = stripslashes($_GET['color_b']); // font color - BLUE$lines = stripslashes($_GET['lines']);function arrow($im, $x1, $y1, $x2, $y2, $alength, $awidth, $color){///}if(is_numeric($_GET['color']) && $_GET['color'] >= '1' && $_GET['color'] <= '47'){ $bgpic = 'images/sig_maker/' . $_GET['color'] . '.jpeg';}$im = imagecreatefromjpeg($bgpic);//Calculate, the centre:for(;;){list($image_width, $image_height) = getimagesize($bgpic);list($left_x, , $right_x) = imagettfbbox($size, 0, $font, $name);$text_width = $right_x - $left_x;if($image_width > $text_width+5){break;}$size = $size - .5;if($size == 1){die('Script not responding to decreasing font size, in other words: try using less letters.');}}$hpadding = ($image_width - $text_width)/2;$vpadding = ($image_height/2)+18;$textcolor = imagecolorresolve($im, $fontcolor['r'], $fontcolor['g'], $fontcolor['b']);if($centre== 'y'){imagettftext($im, $size, 0, $hpadding,$vpadding, $textcolor, $font, $name);}else{imagettftext($im, $size, $angle, $x, $y, $textcolor, $font, $name);}imagegif($im);imagedestroy($im);?>[/code]Thanks for your help Link to comment https://forums.phpfreaks.com/topic/20962-displaying-image-on-html-page/ Share on other sites More sharing options...
onlyican Posted September 16, 2006 Share Posted September 16, 2006 I believe that should workTry it Link to comment https://forums.phpfreaks.com/topic/20962-displaying-image-on-html-page/#findComment-92946 Share on other sites More sharing options...
Orio Posted September 16, 2006 Share Posted September 16, 2006 [code]<img src="http://gamesigs.co.uk/creation.php?color=30&name=josh=75&y=200&angle=0&font=10&size=25&select=255,255,255&color_r=255&color_g=255&color_b=255&submit=Create+My+Sig!">[/code]Orio. Link to comment https://forums.phpfreaks.com/topic/20962-displaying-image-on-html-page/#findComment-92947 Share on other sites More sharing options...
448191 Posted September 16, 2006 Share Posted September 16, 2006 You're on the right track.You just assemble the request string depening on $_POST varaibles.<?php echo $_POST['color','name',etc...]?>Won't work though.I'd say something more along the lines of this:[code]<?phpecho '<img src="http://gamesigs.co.uk/creation.php?color='.$_POST['color'].'&name='.$_POST['name'].'" />';?>[/code] Link to comment https://forums.phpfreaks.com/topic/20962-displaying-image-on-html-page/#findComment-92948 Share on other sites More sharing options...
448191 Posted September 16, 2006 Share Posted September 16, 2006 Here's an idea: use an associative array in your form to store img properties and values:[code]<?phpforeach($_POST['imgprops'] as $prop=>$value){ $uriArr[]= $prop.'='.$value;}$uri = 'http://gamesigs.co.uk/creation.php?'.implode('&',$uriArr);?><form id="form1" name="form1" method="post" action=""> <label>name <input type="text" name="imgprops[name]" /> </label> <label>color <input type="text" name="imgprops[color]" /> </label> <p> <input type="submit" name="Submit" value="Submit" /> </p></form>[/code]A lot of people don't realize you can use associative arrays for get and post index values.Get example:[u][i]?imgprops[color]=blue&imgprops[name]=image1&create=true[/i][/u][i]print_r($GET)[/i] now prints:[quote]Array( [imgprops] => Array ( [color] => blue [name] => image1 ) [create] => true)[/quote] Link to comment https://forums.phpfreaks.com/topic/20962-displaying-image-on-html-page/#findComment-92952 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.