Spaties negeren
Ik heb een foto systeem die geen foto's laat zien als er een spatie in zit. Is er een code waar de spaties gewoon kan negeren?
Mvg,
Matthijs
Hoe zit je fotosysteem in elkaar dan? Als we dat niet weten is het een grote gok hoe we dit precies op moeten lossen!
$jenieuwefotonaam = str_replace(" ","",$jeoudefotonaam);
%20
PHPerik:
%20
vervangen door %20 bedoel je?
Ja, dat werkt in URLs wel, en aangezien het probleem niet duidelijk wordt gedefinieerd zou dat een oplossing kunnen zijn.
$jenieuwefotonaam = str_replace("%20","",$jeoudefotonaam);
Als het uit een url komt, kan dat ook. Maar als je
echo $_GET['fotonaam'];
doet, en in de url staat:
?fotonaam=uitzicht op de bergen
dus
?fotonaam=uitzicht%20op%20de%20bergen
Dan krijg je als resultaat gewoon:
uitzicht op de bergen.
En niet
uitzicht%20op%20de%20bergen
urlencode() en urldecode() moet je hebben voor dit soort dingen :)
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
<?
// Configuratie
$woord="foto"; // naam vd php file
$path = "foto/"; // dir waar foto's in staan
$title = "Foto pagina ". ($page + 1);
// header, dit staat boven de plaatjes.
$header = "";
// Configuratie
$clm = "3"; // Aantal kolommen
$rows = "5"; // aantal rijen
$t_w = "75px";
$t_h = "75px";
?>
// Configuratie
$woord="foto"; // naam vd php file
$path = "foto/"; // dir waar foto's in staan
$title = "Foto pagina ". ($page + 1);
// header, dit staat boven de plaatjes.
$header = "";
// Configuratie
$clm = "3"; // Aantal kolommen
$rows = "5"; // aantal rijen
$t_w = "75px";
$t_h = "75px";
?>
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
56
57
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
56
57
<?
echo "$title<br><br>";
$min = (1+($page * 26));
$max = (($page +1) * 26);
$number = $clm * $rows;
$break = (($page * 26) + $clm);
echo "<table class=\"ktekst\" border=0 cellpadding=0 cellspacing=0><tr>";
$d = dir("$path");
$count = -1;
while($entry=$d->read()) {
if (($count >= $min) AND ($count <= $max)){
if(eregi(".jpg|.jpeg|.gif|.bmp|.png", $entry)){
ClearStatCache();
$size = GetImageSize("$path/$entry");
$size[0] = $size[0] + 20;
$size[1] = $size[1] + 20;
$file_size=fileSize("$path/$entry");
$file_size = round($file_size / 1000) . "k";
echo ("<td><a href=\"#\" onmouseover=\"window.status='Vergroten';return true;\"
onmouseout=\"window.status=''; return true\"
onclick=\"window.open('$path/$entry','pix$count','width=$size[0],height=$size[1],innerwidth=$size[0],innerheight=$size[1],directories=no,location=no,menubar=no,scrollbars=no,status=no,toolbar=no,resizable=no,top=0,left=0,leftmargin=0,topmargin=0,marginwidth=0,marginheight=0,screenX=0,screenY=0');return false\"><img src=$path/");
echo $entry." border=0 alt=$count height=$t_h></a> </td>\n"; // width=$t_w
}
if ($count == $break){
echo "</tr>\n<tr>\n";
$break = $count + $clm ;
}
}
$count++;
}
$d->close();
echo "</tr></table>";
$pages = ($count / 25);
$pageplus = ($page + 1);
$pagemin = ($page - 1);
if (($page + 1) < $pages){
$volgende = " | <a href=$woord.php?page=$pageplus>Volgende 25 Foto's</a> |";
}
if (($page+1) > "1"){
$vorige = "| <a href=$woord.php?page=$pagemin>Vorige 25 Foto's</a> |";
}
// Footer, dit staat onder de plaatjes.
echo "$vorige $volgende";
?>
echo "$title<br><br>";
$min = (1+($page * 26));
$max = (($page +1) * 26);
$number = $clm * $rows;
$break = (($page * 26) + $clm);
echo "<table class=\"ktekst\" border=0 cellpadding=0 cellspacing=0><tr>";
$d = dir("$path");
$count = -1;
while($entry=$d->read()) {
if (($count >= $min) AND ($count <= $max)){
if(eregi(".jpg|.jpeg|.gif|.bmp|.png", $entry)){
ClearStatCache();
$size = GetImageSize("$path/$entry");
$size[0] = $size[0] + 20;
$size[1] = $size[1] + 20;
$file_size=fileSize("$path/$entry");
$file_size = round($file_size / 1000) . "k";
echo ("<td><a href=\"#\" onmouseover=\"window.status='Vergroten';return true;\"
onmouseout=\"window.status=''; return true\"
onclick=\"window.open('$path/$entry','pix$count','width=$size[0],height=$size[1],innerwidth=$size[0],innerheight=$size[1],directories=no,location=no,menubar=no,scrollbars=no,status=no,toolbar=no,resizable=no,top=0,left=0,leftmargin=0,topmargin=0,marginwidth=0,marginheight=0,screenX=0,screenY=0');return false\"><img src=$path/");
echo $entry." border=0 alt=$count height=$t_h></a> </td>\n"; // width=$t_w
}
if ($count == $break){
echo "</tr>\n<tr>\n";
$break = $count + $clm ;
}
}
$count++;
}
$d->close();
echo "</tr></table>";
$pages = ($count / 25);
$pageplus = ($page + 1);
$pagemin = ($page - 1);
if (($page + 1) < $pages){
$volgende = " | <a href=$woord.php?page=$pageplus>Volgende 25 Foto's</a> |";
}
if (($page+1) > "1"){
$vorige = "| <a href=$woord.php?page=$pagemin>Vorige 25 Foto's</a> |";
}
// Footer, dit staat onder de plaatjes.
echo "$vorige $volgende";
?>
Code (php)
Ontopic: Gebruik urlencode() en urldecode(). Met str_replace() deze functies nog een keer gaan programmeren lijkt nogal op het wiel opnieuw uitvinden...