Plaatje tonen, wel in DB niet fysiek.
Is er in php dus zoiets als check of xxx.jpg exists. En als het bestaat, kun je het ook in PHP-safemode uitvoeren?
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?PHP
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo 'standart';
}
?>
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo 'standart';
}
?>
Hiervoor kan je dus ook de verwijzing geven naar een standaard ge-upload plaatje.
lissy:
Wanneer ik dit goed begrijp krijg je nu bij geen plaatje de tekst te zien: standart
Hiervoor kan je dus ook de verwijzing geven naar een standaard ge-upload plaatje.
Hiervoor kan je dus ook de verwijzing geven naar een standaard ge-upload plaatje.
Je begijpt het goed. En ik snap het nu ook. Bedankt.
Dat van mij een voorbeeld niet echt een script ^^
Han:
Dat van mij een voorbeeld niet echt een script ^^
Begrijp ik. Het ging me voormalijk om die file_exists en of die ook in safemode werkte. Maar ik het het nu draaiende gekregen, bedankt Han.
Voor mij zijn dit soort voorbeelden heel handig en omdat ik niet verkeerd wil gaan verifieer ik dit dan altijd bij echte DieHards!!
Ik bewaar dit soort voorbeelden dan ook altijd voor het geval ik zoiets nodig heb en dan probeer ik dit eerst zelf aan de praat te krijgen alvorens ik de hulp van hier inroep.
Op deze manier ben ik echt al heel wat verder gekomen!!
Groet, lissy
PS bedankt Han!!!
Het script werkt goed. Maar de file_exists blijft FALSE geven in safemode. In php.net staat ook zo iets. Is er geen andere functie of manier om dit probleem op te lossen? Ik heb is_readable(); nog gezien, maar ik denk dat die in safemode ook niet toegelaten wordt.
Iemand suggesties?
bestaat hed pad wel? ik kan me voorstellen dat het pad van het plaatje met een / begint, wat op zich voor een website niet erg is. Maar php denk nu dat hij in de root van je computer moet zoeken, en dat wil natuurlijk niet ;)
Jelmer:
bestaat hed pad wel? ik kan me voorstellen dat het pad van het plaatje met een / begint, wat op zich voor een website niet erg is. Maar php denk nu dat hij in de root van je computer moet zoeken, en dat wil natuurlijk niet ;)
De link bestaat gewoon. Hij geeft gewoon nooit een TRUE waarde. Ik heb gewoon een echo gegeven van die link. De link is in de trand van: http://www.mijnwebsite.nl/images/34.jpg. Als ik de link copy en paste in browser werk ie direct. Als ik deze link aanlever aan de functie is hij altijd FALSE. Dit komt volgens mij door de PHPSafemode van de provider. Daarom vroeg ik me af of er een alternatieve funcite of code was hiervoor? Dus voor het testen of een bestand of link bestaat.
Probeer eens gewoon de map van de plaatjes..
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?PHP
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo '<img src="images/standard.png">';
}
?>
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo '<img src="images/standard.png">';
}
?>
Zoiets
Willem-Jan:
Wilde gok van mij hoor, maar volgens mij werkt file_exists() alleen op je eigen website... En als je een adres type (ookal is het je eigen website) werkt het niet..
Probeer eens gewoon de map van de plaatjes..
Zoiets
Probeer eens gewoon de map van de plaatjes..
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?PHP
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo '<img src="images/standard.png">';
}
?>
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo '<img src="images/standard.png">';
}
?>
Zoiets
Het zou kunnen dat je gelijk hebt. MAAR ik heb het probleem dat de index.php op een ander subdomein staan dan de plaatjes. Ik kan dus niet direct naar de images map, en moet het via een http laten werken.
Bestaat er geen functie die de link of zo checked?
Han:
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?PHP
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo 'standart';
}
?>
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo 'standart';
}
?>
mysql_fetch_assoc ($query) geeft een associatieve array terug, dus daarna kun je het resultaat niet met $f->file benaderen.
In dit voorbeeld dus $f->file vervangen door $f['file']
Jan:
Ik gebruik de $f->file uit het voorbeeld ook niet. PHPsafemode geeft gewoon altijd FALSE, omdat hij de functie niet accepteerd. Daarom mijn vraag, zijn er alternatieven die wel in safemode werken?
Han:
mysql_fetch_assoc ($query) geeft een associatieve array terug, dus daarna kun je het resultaat niet met $f->file benaderen.
In dit voorbeeld dus $f->file vervangen door $f['file']
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?PHP
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo 'standart';
}
?>
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f->file)) {
echo $f->file;
}else{
echo 'standart';
}
?>
mysql_fetch_assoc ($query) geeft een associatieve array terug, dus daarna kun je het resultaat niet met $f->file benaderen.
In dit voorbeeld dus $f->file vervangen door $f['file']
Ik gebruik de $f->file uit het voorbeeld ook niet. PHPsafemode geeft gewoon altijd FALSE, omdat hij de functie niet accepteerd. Daarom mijn vraag, zijn er alternatieven die wel in safemode werken?
Gewijzigd op 30/09/2005 11:05:00 door Jaws
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?PHP
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f['file'])) {
echo '<img src='.$f['file'].'>';
}else{
echo '<img src="standaart.gif">';
}
?>
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f['file'])) {
echo '<img src='.$f['file'].'>';
}else{
echo '<img src="standaart.gif">';
}
?>
Oeps foutje
nu moet het wel redelijk werkt
Je kan ook gewoon het plaatje laden en kijken of hij iets heeft of niet heeft
Han:
Oeps foutje
nu moet het wel redelijk werkt
Je kan ook gewoon het plaatje laden en kijken of hij iets heeft of niet heeft
Code (php)
1
2
3
4
5
6
7
8
9
2
3
4
5
6
7
8
9
<?PHP
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f['file'])) {
echo '<img src='.$f['file'].'>';
}else{
echo '<img src="standaart.gif">';
}
?>
$query = mysql_query("select lalall from lkalal where user = lallala");
$f = mysql_fetch_assoc($query);
if(file_exist($f['file'])) {
echo '<img src='.$f['file'].'>';
}else{
echo '<img src="standaart.gif">';
}
?>
Oeps foutje
nu moet het wel redelijk werkt
Je kan ook gewoon het plaatje laden en kijken of hij iets heeft of niet heeft
Han, de functie werkt niet in safemode:
http://nl2.php.net/manual/en/function.file-exists.php
Kijk onder "Warning".
Is er geen alternatief?
Han:
Je kan ook gewoon het plaatje laden en kijken of hij iets heeft of niet heeft
Hoe bedoel je dat?
Gewijzigd op 30/09/2005 19:57:00 door Jaws
Nouw als je een X ziet dan weet je of hij er is en als je een plaatje ziet is hij er ^^
Han:
Nouw als je een X ziet dan weet je of hij er is en als je een plaatje ziet is hij er ^^
Ja dan stukje had ik wel begrepen. Ik wou graag weten hoe ik dan kan checken anders dan file_exists. Dus ik lever een link aan naar een plaatje. http://www.site.nl/plaatjes.jpg en een functie geeft TRUE als de link klopt en er idd een plaatje staat. Ander is hij FALSE. Ik weet dat file_exists dit kan maar PHPSAFEMODE ondersteund deze functie niet. Hoe kan ik dat anders laten checken??
Edit:
getimagesize()
Kan je hier niks mee? Heb je meteen de grootte :D
Gewijzigd op 30/09/2005 21:00:00 door Willem Jan Z
Willem-Jan:
Is er niet een mogelijkheid hem gewoon binnen te halen en dan te checken of het een plaatje is?
Edit:
exif-imagetype()
Kan je hier niks mee? Heb je meteen de extensie :D
Edit:
exif-imagetype()
Kan je hier niks mee? Heb je meteen de extensie :D
Ja hoe? Ik heb dus in een veld in een tabel in de database waar allemaal 1.jpg, 2.jpg enz. in staat.
Die roep ik op. En alleen de plaatjes die fysiek in een map op een ander (WWW) subdomein staan moet hij tonen en voor de rest een standaard plaatje. Het veld voor het plaatje in de database is dus altijd gevuld met een plaatjesnaam, alleen zijn voor sommige nog geen fysiek plaatje toegevoegd.