login  Naam:   Wachtwoord: 
Registreer je!
 Forum

afbeelding vervangen

Offline Stefan14 - 09/04/2007 14:17 (laatste wijziging 09/04/2007 14:18)
Avatar van Stefan14PHP gevorderde Ik heb een bewerkscript waarin een plaatje geupload moet kunnen worden, maar als er al een plaatje is, dan moet deze uiteraard eerst verwijderd worden en dan kan het nieuwe plaatje geupload worden.

nu probeer ik dat met de volgende code
  1. <?php
  2. if(isset($_FILES['foto']['name']))
  3. {
  4. $query3 = "SELECT inst_rument FROM muz_instr WHERE inst_id = ".$id;
  5. $result3 = mysql_query($query3) or die (mysql_error());
  6. $row3 = mysql_fetch_array($result3);
  7. unlink('instr_plaatjes/'.$row3['inst_rument'].'.jpg');
  8. copy($_FILES['foto']['tmp_name'],'instr_plaatjes/'.$naam.'.jpg');
  9. }
  10. ?>



Alleen blijft hierbij het oude plaatje doodleuk staan, wordt niet verwijderd e.d.

oh ja, het was helaas niet mijn idee om de namen van de instrumenten te gebruiken als naam van het plaatje, ik had liever de id's gebruikt oid, want nu moet je eerst de oude naam ophalen van het instrument om het oude plaatje te kunnen verwijderen, want als de naam ook gewijzigd is, dan weet je niet hoe het oude plaatje heette.

11 antwoorden

Gesponsorde links
Offline vinTage - 09/04/2007 14:23
Avatar van vinTage Nieuw lid Word een plaatje niet overschreven als je er een upload met dezelfde naam ?
Offline Stefan14 - 09/04/2007 14:25 (laatste wijziging 09/04/2007 14:28)
Avatar van Stefan14 PHP gevorderde heb ik eigenlijk nog niet eens geprobeerd Vintage, maar probleem is wel dat als de naam veranderd, ook de naam van het plaatje moet veranderen .
Dus dan zou het oude plaatje alsnog verwijderd moeten worden.

EDIT: zojuist geprobeerd, maar plaatje wordt niet vervangen als ik er een met dezelfde naam upload.
Offline phpfreak - 09/04/2007 14:28
Avatar van phpfreak PHP beginner Ben je zeker dat de naam van het plaatje in de database zonder extentie is want anders probeert hij naam.jpg.jpg te verwijderen en dat gaat niet lukken. Ook moet je nog de nieuwe naam in de database schrijven. (Niet dat het hieraan kan liegen, maar moet wel)
Offline superlol - 09/04/2007 14:32 (laatste wijziging 09/04/2007 14:33)
Avatar van superlol PHP interesse Misschien staat het plaatje bij je opgeslagen in je tijdelijke internet bestanden (cache) en verandert hij daarom niet?

btw, heeft $naam wel een waarde?
Offline Stefan14 - 09/04/2007 14:32 (laatste wijziging 09/04/2007 14:34)
Avatar van Stefan14 PHP gevorderde volledige code staat hier:
http://plaatscode.be/4948/

de naam in de database is zonder .jpg, want anders zou de naam van het instrument (de kop) ook met .jpg weergegeven worden, dat zou natuurlijk niet staan.

@superlol, ik gebruik FF, en die slaat zoieso al minder op in z'n cache volgens mij, maar ik heb nog even crtl+f5 gedaan, maar het plaatje blijft hetzelfde.
EDIT2: ja, $naam heeft een waarde, want zodra ik de naam verander wordt deze wijziging wel weggeschreven naar de database.
Offline superlol - 09/04/2007 14:37
Avatar van superlol PHP interesse Probeer is alleen :
unlink('instr_plaatjes/'.$row3['inst_rument'].'.jpg');
en zet voor die copy(); 2 slashes, en moet je even kijken of het bestand wel verwijderd wordt?
Als dit niet gebeurt, moet je precies alles in je db nakijken , geen spelfouten ofzo
Offline Stefan14 - 09/04/2007 14:42
Avatar van Stefan14 PHP gevorderde ik heb nu het copy stukje als comment gezet, en alleen unlink laten uitvoeren, maar ook hier weer het resultaat dat het plaatje blijft staan, heb nog gekeken met ftp.

toen in de db gekeken, en daar stond de naam gewoon zonder extensie oid, het is precies de bestandsnaam.

ik heb ook nog gekeken naar .jpg en .JPG, dat wil ook nog wel eens verschil maken, maar het was een extensie met kleine letters, dus dat maakt blijkbaar ook niet uit.

het uploaden gaat wel goed, tenminste, als er nog niets staat, en daar gebruik ik hetzelfde script voor, maar dan zonder unlink.
Offline superlol - 09/04/2007 14:48
Avatar van superlol PHP interesse Dus de unlink werkt niet,
probeer dit dan eens :
unlink('instr_plaatjes/HIER-Je-BESTANDSNAAM.jpg');
en dan kijken of hij wel wordt verwijderd
Offline Stefan14 - 09/04/2007 14:58
Avatar van Stefan14 PHP gevorderde zelfs als ik de bestandsnaam absoluut invul wordt hij nog niet verwijderd.

de mappenstructuur is als volgt:
public_html/bewerkinstr.php
public_html/instr_plaatjes/blablabla.jpg

dan is het pad in de unlink toch goed?
Offline superlol - 09/04/2007 15:06
Avatar van superlol PHP interesse Hmm,
staat instr_plaatjes ge-chmod naar 777?
Offline Stefan14 - 09/04/2007 15:08 (laatste wijziging 09/04/2007 17:38)
Avatar van Stefan14 PHP gevorderde ook dat is gebeurd, dat had ik al gedaan voordat ik het probleem hier postte.

ik heb contact gehad met mijn hoster of die functie misschien uitgeschakeld was oid, maar dat is niet het geval, zou ook wel stom zijn, maar toch.

iemand nog ideeën?
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.202s