pics in gb
Gewijzigd op 06/06/2004 11:16:00 door De VeeWee
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?
$picurl = "http://www.phphulp.nl/mini.jpg";
$size = getimagesize($picurl);
if ("{$size[0]}" > "{$size[1]}")
{
if ("{$size[0]}" > 125)
$width = "width=\"125\"";
else
$width = "width=\"{$size[0]}\"";
if ("{$size[1]}" > 100)
$height = "height=\"100\"";
else
$height = "width=\"{$size[1]}\"";
}
else
{
if ("{$size[0]}" > 100)
$width = "width=\"100\"";
else
$width = "width=\"{$size[0]}\"";
if ("{$size[1]}" > 125)
$height = "height=\"125\"";
else
$height = "width=\"{$size[1]}\"";
}
echo "<img src=\"" . $picurl . "\" width=\"" . $width . "\" height=\"" . $height . "\" alt=\"user picture\">";
?>
$picurl = "http://www.phphulp.nl/mini.jpg";
$size = getimagesize($picurl);
if ("{$size[0]}" > "{$size[1]}")
{
if ("{$size[0]}" > 125)
$width = "width=\"125\"";
else
$width = "width=\"{$size[0]}\"";
if ("{$size[1]}" > 100)
$height = "height=\"100\"";
else
$height = "width=\"{$size[1]}\"";
}
else
{
if ("{$size[0]}" > 100)
$width = "width=\"100\"";
else
$width = "width=\"{$size[0]}\"";
if ("{$size[1]}" > 125)
$height = "height=\"125\"";
else
$height = "width=\"{$size[1]}\"";
}
echo "<img src=\"" . $picurl . "\" width=\"" . $width . "\" height=\"" . $height . "\" alt=\"user picture\">";
?>
het zit in een hele tekstblok, en heb geprobeerd met preg_match maar kon er niet echt aan uit...
Hoe kan ik dit script dan laten werken?
en bestaat er een code om te zien of de pic bestaat?
Gewijzigd op 06/06/2004 11:48:00 door de VeeWee
file_exists() ?
je kan met file_exsists toch enkel in uw eigen mappen zoeken...
dit is wat ik tot nu toe al heb:
(normaal is het [/img] maar dan zet dit forum het om...)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
<?
function picture($picurl){
$size = getimagesize($picurl);
if ($size[0] > $size[1])
{
if ($size[0] > 125)
$width = 125;
else
$width = $size[0];
if ($size[1] > 100)
$height = 100;
else
$height = $size[1];
}
else
{
if ($size[0] > 100)
$width = 100;
else
$width = $size[0];
if ($size[1] > 125)
$height = 125;
else
$height = $size[1];
}
echo "<img style=\"cursor:hand\" src=\"" . $picurl . "\" width=\"" . $width . "\" height=\"" . $height . "\" alt=\"klik om te vergroten\"";
$breed = $size[0] + 40;
$hoog = $size[1] + 40;
echo " onclick=\"popup('".$picurl."', ".$breed.", ".$hoog.")>";
//str_replace("[img]".$picurl."[/img ]", $go, $_POST['Bericht']); $go is wat in deze functie echo inhoud
}
// een test:
$Bericht = "een afbeelding: [img]http://www.altidude.net/mount/stecknadelhorn/North%20Face%20of%20Stecknadelhorn%20(at%20background%20the%20Nadelhorn)%20-%20groot.jpg[/img ]
van sneeuw (en tevens een test)";
preg_match("#\[img\](.*?)\[\/img \]#si",$Bericht,$matches); // normaal $_POST['bericht']
picture($matches[1]);
?>
function picture($picurl){
$size = getimagesize($picurl);
if ($size[0] > $size[1])
{
if ($size[0] > 125)
$width = 125;
else
$width = $size[0];
if ($size[1] > 100)
$height = 100;
else
$height = $size[1];
}
else
{
if ($size[0] > 100)
$width = 100;
else
$width = $size[0];
if ($size[1] > 125)
$height = 125;
else
$height = $size[1];
}
echo "<img style=\"cursor:hand\" src=\"" . $picurl . "\" width=\"" . $width . "\" height=\"" . $height . "\" alt=\"klik om te vergroten\"";
$breed = $size[0] + 40;
$hoog = $size[1] + 40;
echo " onclick=\"popup('".$picurl."', ".$breed.", ".$hoog.")>";
//str_replace("[img]".$picurl."[/img ]", $go, $_POST['Bericht']); $go is wat in deze functie echo inhoud
}
// een test:
$Bericht = "een afbeelding: [img]http://www.altidude.net/mount/stecknadelhorn/North%20Face%20of%20Stecknadelhorn%20(at%20background%20the%20Nadelhorn)%20-%20groot.jpg[/img ]
van sneeuw (en tevens een test)";
preg_match("#\[img\](.*?)\[\/img \]#si",$Bericht,$matches); // normaal $_POST['bericht']
picture($matches[1]);
?>
als ik het uitvoer dan komt er geen afbeelding op omdat de width en de heigt leeg zijn;
weet iemand wat er hier fout aan is?
en hoe kan ik hier best die file_exists op uitvoeren?
dank!
Gewijzigd op 06/06/2004 15:51:00 door de VeeWee
als je dat scriptje van mij gebruikt die hier boven staat, werkt het
ik heb uw code ingegeven in de functie en de width en de height blijven gewoon ""
dit is de code die ik dan krijg in de broncode: (als ik gewoon u code plak)
<img src="http://www.altidude.net/mount/stecknadelhorn/North%20Face%20of%20Stecknadelhorn%20(at%20background%20the%20Nadelhorn)%20-%20groot.jpg" width="width=""" height="width=""" alt="user picture">
edit:
kan het zijn dat die getimagesize niet geinstaleerd is of bv. een nieuwere versie van php nodig heeft ofzo?
Gewijzigd op 06/06/2004 17:30:00 door de VeeWee
functions.php:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<?php
function imageresize($image){
$max = 250; // Dit is dus de max breedte
$img_size = getimagesize($image);
$b = $img_size[0];
$h = $img_size[1];
if($h > $max || $b > $max){
// Begin van $image, met de hyperlink
$show = "<a href=\"#\" onclick=\"javascript:window.open('popup.php?file=".$image."&width=".$b."&height=".$h."&titleImage=".$image."','photopopup','width=".$b.",height=".$h.",directories=no,location=no,menubar=no,scrollbars=no,status=no,toolbar=no,resizable=no,screenx=100,screeny=100')\">";
if($h > $b){
$teveel = $h - $max;
$teveelP = $teveel / $h;
$h = $max;
$b = $b - ($b * $teveelP);
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}
if($b > $h){
$teveel = $b - $max;
$teveelP = $teveel / $b;
$b = $max;
$h = $h - ($h * $teveelP);
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}else{
$h = $max;
$b = $max;
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}
// Einde
$show .= "</a><br><font size=\"1\"><i>Dit plaatje is verkleind vanwege de layout.</i></font>\n";
}else{
$show = '<img src='.$image.' border='.$border.'>';
}
return $show;
}
?>
function imageresize($image){
$max = 250; // Dit is dus de max breedte
$img_size = getimagesize($image);
$b = $img_size[0];
$h = $img_size[1];
if($h > $max || $b > $max){
// Begin van $image, met de hyperlink
$show = "<a href=\"#\" onclick=\"javascript:window.open('popup.php?file=".$image."&width=".$b."&height=".$h."&titleImage=".$image."','photopopup','width=".$b.",height=".$h.",directories=no,location=no,menubar=no,scrollbars=no,status=no,toolbar=no,resizable=no,screenx=100,screeny=100')\">";
if($h > $b){
$teveel = $h - $max;
$teveelP = $teveel / $h;
$h = $max;
$b = $b - ($b * $teveelP);
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}
if($b > $h){
$teveel = $b - $max;
$teveelP = $teveel / $b;
$b = $max;
$h = $h - ($h * $teveelP);
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}else{
$h = $max;
$b = $max;
$show .= "<img src=\"".$image."\" height=\"".$h."\" width=\"".$b."\" border=\"0\">";
}
// Einde
$show .= "</a><br><font size=\"1\"><i>Dit plaatje is verkleind vanwege de layout.</i></font>\n";
}else{
$show = '<img src='.$image.' border='.$border.'>';
}
return $show;
}
?>
En dan mijn UBBC-parser:
ubbc.php:
Code (php)
1
2
3
2
3
<?php
$bericht = preg_replace("_\[img\](.*?)\[/img\]_ise"," imageresize('\\1') ", $bericht);
?>
$bericht = preg_replace("_\[img\](.*?)\[/img\]_ise"," imageresize('\\1') ", $bericht);
?>
En je moet natuurlijk voordat je je ubbc.php aanroept nog functions.php aanroepen.
Zoals je ziet in mijn code wordt mijn foto kleiner gemaakt en kunnen ze de grote versie via een pop-up opvragen. Dit kan je natuurlijk verwijderen. Je kan ook de pop-up gebruiken.
popup.php:
Code (php)
1
2
3
4
5
6
7
2
3
4
5
6
7
<?php
// Variabelen
$titleImage = $_GET['titleImage'];
$file = $_GET['file'];
if(is_numeric($_GET['width']))$width = $_GET['width'];
if(is_numeric($_GET['height']))$height = $_GET['height'];
?>
// Variabelen
$titleImage = $_GET['titleImage'];
$file = $_GET['file'];
if(is_numeric($_GET['width']))$width = $_GET['width'];
if(is_numeric($_GET['height']))$height = $_GET['height'];
?>
<html>
<head>
<title></title>
<style>
BODY {margin:0px;}
</style>
</head>
<body onBlur="window.close()">
Code (php)
1
2
3
2
3
<?php
echo "<a href=\"javascript:window.close()\"><img src=\"".$file."\" width=\"".$width."\" height=\"".$height."\" border=\"0\" alt=\"".$titleImage."\"></a>";
?>
echo "<a href=\"javascript:window.close()\"><img src=\"".$file."\" width=\"".$width."\" height=\"".$height."\" border=\"0\" alt=\"".$titleImage."\"></a>";
?>
</body>
</html>
Elwin
ik schat dat al deze scripts wel werken maar lycos niet
(had hetzelfde met cookies...)
ik denk dat ik dit dan maar met javascript moet oplossen ofzo
in ieder geval als iemant een goede gratis host met php en mysql weet, laat maar weten!
Quote:
volgens mij is er iets serieus mis met lycos...
Op al die reclame en trage verbindingen na bedoel je? ;)
Elwin
ik was aan het denken (wow wat een suprise :p)
en dacht dan opeens:
als ik dit zet:
$img_size = getimagesize($image);
$b = $img_size[0];
kan ik daar dan niet zoiets zetten of bestaat dat niet?
zoiets dus:
$img_size = getimagesize($image);
$b = $img_size["width"];