[PHP] functie copy() onder windows

Pagina: 1
Acties:
  • 31 views sinds 30-01-2008

  • GewoonNico
  • Registratie: April 2003
  • Laatst online: 08:07
Hallo Tweakers,

Ik krijg de php functie copy() niet aan de praat onder windows... ook wordt ik er niet wijzer van als ik op php.net kijk.

Ik gebruik de functie op deze manier:

code:
1
copy(temp/$nummer/$description.png, $map/$nummer/$description.png);


Ik krijg de volgende foutmelding

Warning: Unable to open '0.png' for reading: No such file or directory in c:\phpdev\www\cam\index.php on line 26

  • Hu9o
  • Registratie: Mei 2001
  • Laatst online: 22-08 18:19

Hu9o

Schokkend

Ik gok dat die functie het bestand van path A naar path B kopieerd

Copy(A,B)

En de fout die jij krijgt, is dat hij bestand in path A niet kan vinden

>>>>>>>>>>>>>>>>>>>>>>>>>Vertel Microsoft over dit probleem <<<<<<<<<<<<<<<<<<<<<<<<<


  • Noork
  • Registratie: Juni 2001
  • Niet online
De foutmelding geeft aan dat het bestand niet bestaat in de map waarin hij probeert te lezen. Controleer dit nogmaals. Deze functie werkt wel gewoon onder Win.

Probeer je copy functie even te echo'en. Dan zie je of de variabelen wel zijn ingevuld en het hele pad klopt.

[ Voor 27% gewijzigd door Noork op 04-06-2003 09:27 ]


  • GewoonNico
  • Registratie: April 2003
  • Laatst online: 08:07
Vreemd,

Ik het bestand bestaat gewoon en het path is ook correct.

Een paar stappen eerder in dit script wordt deze actie gedaan:

code:
1
2
@mkdir("temp/$nummer/");
ImagePNG($im, "temp/$nummer/$description.png");

  • GewoonNico
  • Registratie: April 2003
  • Laatst online: 08:07
bij een echo krijg ik het volgende

Warning: Unable to open '0png' for reading: No such file or directory in c:\phpdev\www\cam\index.php on line 26
nr: 12345
desc: 12345
dest: test/12345/12345.png
bron: temp/12345/12345.png


ingevoerd:

$nummer = 12345
$description = 12345

  • Noork
  • Registratie: Juni 2001
  • Niet online
Er zit toch een lullig foutje in denk ik. Waarom probeert hij 0.png te lezen, terwijl je 12345 heb ingevoerd?

  • GewoonNico
  • Registratie: April 2003
  • Laatst online: 08:07
Kan het zijn dat je \ moet gebrruiken in plaats van / ?

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
partypas schreef op 04 June 2003 @ 09:29:
Vreemd,

Ik het bestand bestaat gewoon en het path is ook correct.

Een paar stappen eerder in dit script wordt deze actie gedaan:

code:
1
2
@mkdir("temp/$nummer/");
ImagePNG($im, "temp/$nummer/$description.png");
Verander dit sowieso eens in (en doe dat gelijk overal waar je strings gebruikt in de tekst):

PHP:
1
2
@mkdir("temp/". $nummer ."/");
ImagePNG($im, "temp/". $nummer ."/". $description .".png");


Is voor jezelf stukken overzichtelijker wat nou variabelen zijn en wat niet en het kan daardoor een hoop fouten voorkomen :).

  • simon
  • Registratie: Maart 2002
  • Laatst online: 21-08 13:41
Waarom doe je die @ voor je mkdir, nu geeft hij geen error.
En probeer eens je variabelen te checken, ipv meteen je functie tegebruiken: dus even echo'en :)

|>


  • Limhes
  • Registratie: Oktober 2001
  • Laatst online: 19-08 19:06
code:
1
copy(temp/$nummer/$description.png, $map/$nummer/$description.png);
Quotes om strings...

Dit is toch wel vrij basis dacht ik.

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
Doe anders eens dit:

PHP:
1
2
3
4
5
6
7
8
$org = "temp/". $nummer ."/". $description .".png";
$dest = $map ."/". $nummer ."/". $description .".png";

if( copy( $org,  $dest ) ) {
   echo "copy gelukt";
} else {
   echo "copieeren van file '". $org ."' naar '". $dest ."' is helaas niet gelukt.";
}


Zo kan je gelijk kijken of de variabelen wel goed gevuld zijn, wellicht is dat niet het geval en onstaat zo de fout (in je error staat '0png' in plaats van 0.png om te beginnen, en volgens mij zou 0 een ander nummer moeten zijn).

  • McVirusS
  • Registratie: Januari 2000
  • Laatst online: 21-08 10:46
Limhes schreef op 04 June 2003 @ 09:47:
Quotes om strings...

Dit is toch wel vrij basis dacht ik.
Dat bedacht ik me ook pas net toen ik ging quoten, kwam ik niet eens op dat dat de fout was :o. Is inderdaad behoorlijk basis, ga er nog even vanuit dat dat niet de fout is en de topicstarter gewoon de verkeerde code heeft gepost. Anders; shame on topicstarter :).

  • GewoonNico
  • Registratie: April 2003
  • Laatst online: 08:07
Toen ik de slashes verving met backslashes werkte alles ineens!

Thanx

later

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 22-08 01:56
Ideaal topic voor de eeuwige discussie over het 'nivo' op dit forum. :/

Kan iedereen het niet gewoon laten om te reageren in topics waar ze absoluut geen verstand van hebben? De enige die een zinnige reactie geeft (op een niet-GoT-waardige starting post) is Limhes, maar zijn reactie valt weg tussen het hersenloze geblaat van de rest. |:( (Ik geloof trouwens dat de topic starter het nog steeds niet begrijpt).

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

Mja...

Kijk voor de grap eens op www.php.net om te kijken hoe het zit met het fenomeen "type juggling". Kijk meteens eens naar het stukje over operators om te zien wat de '/' doet als je die tussen 2 variabelen zet.

Verder is inderdaad het gebruik van strings wel erg basic.

edit:
En niet vergeten het gebruik van http://www.php.net/error-reporting

Mocht je je nog afvragen waarom er geen punt tussen de 0 en de png komt: een . is een 'concatenation operator'. Meer hoef ik toch niet te zeggen. Als je nou niet genoeg voer hebt om de manual door te zoeken weet ik het ook niet meer.

[ Voor 37% gewijzigd door drm op 04-06-2003 10:37 ]

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1

Dit topic is gesloten.