Autor Zpráva
suta
Profil *
Nevím proč, když chci za sebou otevřít (vytvořit) více souborů pomocí
fopen
, tak mi vždy vytvoří pouze ten první (to je při prvním použití fopen).

Příklad:

<?php

$franta = fopen("abc.txt", "w+");
fclose($franta);
?>

<?php
$jelito = fopen("def.txt", "w+");
fclose($jelito);
?>


vytvoří pouze první soubor abc, druhý ne. To samé se děje když za sebou vytvořím soubor a zároveň do něj chci pomocí fwite zapsat text, tak mi pouze vytvoří soubor.
Suta
Profil
Ještě přidám:

<?

// fopen (jméno_souboru, způsob_otevření);
// (r - otevření pro čtení, r+ - čtení i zapisování) - soubor musí existovat
// (w - do souboru budeme chtít zapisovat, w+ - zapisovat i číst - existuje-li, smaže ho a vytvoří nový
// (a - budeme chtít na konec souboru připisovat nová data, a+ - připisovat i číst) - neexistuje-li, vytvoří jej

// fwrite (handle, co_se_má_zapsat, maximální_délka_zápisu); (fwrite - zápis do souboru)
// fread (handle, kolik znaků se má načíst); (fread - čtení ze souboru)
$handle = fopen("honza.txt", "a+");
fwrite($handle, "Věta, která se uloží do souboru honza.txt\r\n"); //funguje, do souboru zapíše, ale nefunguje pak následující
$nacteno = fread($handle, 1000); // tento a následující řádek funguje, vypíše obsah souboru, ale jen když předešlý vymažu
echo "Ze souboru jsem přečetl (v souboru je) toto: ", $nacteno;
fclose($handle);
?>


Zvláštní, nenašel jsem vysvětlení.
error414-
Profil *
Podivej se co ti vraci ty fce. Je to dost divne a nejspis to bude kravina.
printf_jinde
Profil *
Myslím že problém vězí v pozici v souboru. Po připsání na konec by pozice měla ukazovat na konec souboru a odtamtud se toho už moc nepřečte.
viz. http://mirrors.inway.cz/manual/cs/function.fseek.php
Suta
Profil
error414: Co myslíš tím, že to nejspíš bude kravina?

printf_jinde: Na ty ukazatele mrknu, možná je to tím. Ale proč nedokáže vytvořit více souborů za sebou ??
Kajman
Profil *
Mně to vytvoří soubory oba.
Toto téma je uzamčeno. Odpověď nelze zaslat.

0