Afbeelding bestaad niet laad script

Status
Niet open voor verdere reacties.

01slayer10

Nieuwe gebruiker
Lid geworden
30 mrt 2010
Berichten
4
Hallo ik zit met een probleempje,
Ik gebruik op mijn site sints kort de combinatie van een nieuws systeem met een Cms systeem (waar op de gebruikers zelf een avatar moeten kiezen) nu wil ik bij de comments via de onderstaande code de avatar van de gebruiker laden (vanaf het cms systeem) maar dan moeten de gebruikers wel bij de naam hun gebruikers naam (onderstaand opgeroepen via: {author} ) invullen.

PHP:
<img src="http://www.mijnsite.nl/avatar-imaging/avatarimage?user={author}" alt="news" width="100" height="100" align="left" />

Dit werkt nu wel goed, Maar het probleem is nu dat als menssen een foutiefe naam in typen (die dus niet bestaad in de ''Avatar-imaging'' map) dan krijg je een link naar een afbeelding die niet bestaad en dus een even groot (100x100) wit vierkant met links boven in een rood kruis,

Nu zoek ik een script dat ervoor zorgd dat; Als de afbeelding niet bestaad en dus niet laad, dat er een van te voren ingestelde afbeelding automatiche word geladen i.p.v dat rode kruis.

Ik heb zelf vanalles geprobeert met bev:
PHP:
}else{
echo "
Maar ik krijg het hellaas echt niet voor elkaar en ik kan ook niks vinden op internet.


Alvast bedankt voor het lezen en het andwoorden! :thumb:
 
Laatst bewerkt:
Wat je moet doen is of van tevoren opvragen of het plaatje in kwestie bestaat (daarvoor kun je de file_exists() functie van PHP gebruiken) of een extra regel in je .htaccess opnemen die automatisch naar een vooraf gekozen plaatje verwijst als hij een bestand niet kan vinden.
 
Wat je moet doen is of van tevoren opvragen of het plaatje in kwestie bestaat (daarvoor kun je de file_exists() functie van PHP gebruiken) of een extra regel in je .htaccess opnemen die automatisch naar een vooraf gekozen plaatje verwijst als hij een bestand niet kan vinden.
(Alseerst Bedankt voor de snelle reactie :))

een .htaccess laat ik even links liggen,
Maar hoe zou ik een file_exists() functie kunnen toepassen in deze code:

PHP:
<img src="http://www.mijnsite.nl/avatar-imaging/avatarimage?user={author}" alt="news" width="100" height="100" align="left" />

Dus als de link plus het woord: {author} samen geen foto kan laden dat hij dan een afbeelding laad die ik in het script zet.

Ik heb even op internet gezocht en wel wat uitleg gevonden maar de toepassing op mijn probleem vind ik niet (http://php.net/manual/en/function.file-exists.php)

Zou je misschien een kort scriptje kunnen schrijven voor mij? :D
Alvast Bedankt! TY :thumb:
 
Toevoeging

Ik heb nog even verder lopen google en wat aan elkaar gekoppelt en dan kom ik op dit brauwsel uit :p

PHP:
<?
   $bestand = "http://www.mijnsite.nl/avatar-imaging/avatarimage?user={author}";
   if (file_exists($bestand))
   {
      echo "<img src="http://www.mijnsite.nl/avatar-imaging/avatarimage?user={author}" alt="news" width="64" height="110" align="left" />";
   }
   else
   {
      echo "<img src="http://www.mijnsite.nl/avatar-imaging/noavatar.gif" width="64" height="110">";
   }
?>
(hierin verwijst ''avatar-imaging/noavatar.gif'' naar een standaart afbeelding dan''
Maar volgens mij kan je een echo zo niet oproepen...
En dat klopt want ik zie nu bij elke comment de Noavatar.gif en een deel van de code staan.
 
Het probleem is dat je waarschijnlijk een of andere template engine gebruikt. {author} is namelijk geen PHP variabele, vandaar dat hij niks kan vinden.

Als je {author} vervangt door wat er daadwerkelijk uiteindelijk op de pagina komt, dan zou het moeten werken.
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan