als het bestand al bestaat verander de naam
ik ben bezig met dingen uit tekstbox om te zetten naar een txt file. het enige dat fout gaat is dat als bv 0001.txt al bestaat dat hij dan 0002.txt maakt enzovoort. wil iemand met helpen. alvast bedankt.
Wat heb je zelf al geprobeerd? Hoe ziet je relevante code er nu uit? Waar loop je vast?
Gewijzigd op 01/01/1970 01:00:00 door thomas
Laat eens wat van je code zien, dan weten we waarover het gaat...
(iets op die manier, alleen die nullen pakt hij zo niet en er wordt nog geen bestand gemaakt)
steen schreef op 13.04.2009 16:08:
(iets op die manier, alleen die nullen pakt hij zo niet en er wordt nog geen bestand gemaakt)
(iets op die manier, alleen die nullen pakt hij zo niet en er wordt nog geen bestand gemaakt)
bedankt ik zal het proberen
haal dan even het vraagteken weg. Als het bestand nu niet bestaat verhoogt hij het nummer met 1.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<?
echo "test";
$ourFileName = "$nummer.txt";
$nummer = 1;
while(!file_exists($nummer.'.txt'))
{
$nummer++;
}
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
fclose($ourFileHandle);
chmod($ourFileName, 0776);
$text = "Dit is de text die in de textfile zal komen";
$bestand = $ourFileName;
file_put_contents($bestand, $text);
?>
echo "test";
$ourFileName = "$nummer.txt";
$nummer = 1;
while(!file_exists($nummer.'.txt'))
{
$nummer++;
}
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
fclose($ourFileHandle);
chmod($ourFileName, 0776);
$text = "Dit is de text die in de textfile zal komen";
$bestand = $ourFileName;
file_put_contents($bestand, $text);
?>
dit is de code nog zonder het tekstvak erbij
hij werkt alleen niet
Gewijzigd op 01/01/1970 01:00:00 door thomas
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$ourFileHandle = fopen($filename , 'w') or die("can't open file");
fclose($ourFileHandle);
chmod($filename , 0776); //waarom 766?
$text = "Dit is de text die in de textfile zal komen";
file_put_contents(filename , $text);
?>
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$ourFileHandle = fopen($filename , 'w') or die("can't open file");
fclose($ourFileHandle);
chmod($filename , 0776); //waarom 766?
$text = "Dit is de text die in de textfile zal komen";
file_put_contents(filename , $text);
?>
het uitroepteken moest eruit, je nam alleen wat variabelen over. Je ging wel kijken wat je bestandsnaam moet zijn maar deed er niks mee.
Waarom die je een fopen/close en gebruik je daarna file_put_contents voor het wegschrijven?
Gewijzigd op 01/01/1970 01:00:00 door TJVB tvb
TJVB schreef op 13.04.2009 16:26:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$ourFileHandle = fopen($filename , 'w') or die("can't open file");
fclose($ourFileHandle);
chmod($filename , 0776); //zodat php hem kan bewerken
$text = "Dit is de text die in de textfile zal komen";
file_put_contents(filename , $text);
?>
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$ourFileHandle = fopen($filename , 'w') or die("can't open file");
fclose($ourFileHandle);
chmod($filename , 0776); //zodat php hem kan bewerken
$text = "Dit is de text die in de textfile zal komen";
file_put_contents(filename , $text);
?>
chmod($filename , 0776); //zodat php hem kan bewerken
Gewijzigd op 01/01/1970 01:00:00 door thomas
0766 zodat php hem kan bewerken? Die maakt het bestand aan. Ik denk eerder dat je er ook via ftp o.i.d. bijkunt, maar dat doe ik onder dezelfde user als php draait (ik heb mod_ruid draaien waardoor elke website een eigen user heeft die ik ook voor ftp gebruik)
TJVB schreef op 13.04.2009 16:26:
TJVB schreef op 13.04.2009 16:26:
het uitroepteken moest eruit, je nam alleen wat variabelen over. Je ging wel kijken wat je bestandsnaam moet zijn maar deed er niks mee.
Waarom die je een fopen/close en gebruik je daarna file_put_contents voor het wegschrijven?
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
<?
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$ourFileHandle = fopen($filename , 'w') or die("can't open file");
fclose($ourFileHandle);
chmod($filename , 0776); //waarom 766?
$text = "Dit is de text die in de textfile zal komen";
file_put_contents(filename , $text);
?>
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$ourFileHandle = fopen($filename , 'w') or die("can't open file");
fclose($ourFileHandle);
chmod($filename , 0776); //waarom 766?
$text = "Dit is de text die in de textfile zal komen";
file_put_contents(filename , $text);
?>
het uitroepteken moest eruit, je nam alleen wat variabelen over. Je ging wel kijken wat je bestandsnaam moet zijn maar deed er niks mee.
Waarom die je een fopen/close en gebruik je daarna file_put_contents voor het wegschrijven?
de code werkt nog steeds niet
Er ontbreekt een $. Maar krijg je geen errors waarmee je dit soort dingen kunt debuggen?
Maar ik snap het nut van je fopen/fclose niet. file_put_contents maakt het bestand aan als het niet bestaat dus dat kan het probleem niet zijn.
En anders kun je met fwrite de gegevens wegschrijven.
Gewijzigd op 01/01/1970 01:00:00 door TJVB tvb
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
2
3
4
5
6
7
8
9
10
11
12
13
<?
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$text = "Dit is de text die in de textfile zal komen";
file_put_contents($filename , $text);
?>
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$text = "Dit is de text die in de textfile zal komen";
file_put_contents($filename , $text);
?>
dit is nu mijn code maar hij maakt het .txt bestand niet aan
Gewijzigd op 01/01/1970 01:00:00 door TJVB tvb
Ik zie nogal weinig, alleen een witte pagina
en dit is nu mijn code:
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
<?
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$text = "Dit is de text die in de textfile zal komen";
file_put_contents($filename , $text);
?>
echo "test";
$nummer = 1;
while(file_exists($nummer.'.txt'))
{
$nummer++;
}
$filename = $nummer.'.txt'
$text = "Dit is de text die in de textfile zal komen";
file_put_contents($filename , $text);
?>
Gewijzigd op 01/01/1970 01:00:00 door thomas
't onderstaande script, maakt elke keer als je hem aanroept,
0000.txt aangemaakt 43 Bytes
0001.txt aangemaakt 43 Bytes
0002.txt aangemaakt 43 Bytes
enz. enz.
Het bestand eerst openen, en dan weer sluiten is ook onnodig, wanneer je gebruik maakt van de file_put_contents function.
chmod($filename , 0776); is niet nodig, want het bestand wordt aangemaakt door de user waaronder apache/php draait.
wel is het nodig het resultaat af te vangen $size=file_put_contents($filenaam, $text); $size krijgt de waarde -1 wanner het mislukt is, of een positief getal wanneer het gelukt is en dit is dan gelijk aan de omvang in bytes.
Code (php)
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
<?
$nummer=0;
$filenaam=sprintf("%'04s", $nummer).".txt";
while(file_exists($filenaam) ) {
$nummer++;
$filenaam=sprintf("%'04s", $nummer).".txt";
}
$text = "Dit is de text die in de textfile zal komen";
$size=file_put_contents($filenaam, $text);
echo $filenaam." aangemaakt ". $size. " Bytes";
?>
$nummer=0;
$filenaam=sprintf("%'04s", $nummer).".txt";
while(file_exists($filenaam) ) {
$nummer++;
$filenaam=sprintf("%'04s", $nummer).".txt";
}
$text = "Dit is de text die in de textfile zal komen";
$size=file_put_contents($filenaam, $text);
echo $filenaam." aangemaakt ". $size. " Bytes";
?>