Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 9 Pomógł: 0 Dołączył: 7.06.2002 Ostrzeżenie: (0%)
|
problem taki:
w pliku dane sa tak zapisywane: nr||nazwa||rodzaj||ile||autor||nr2 i zrobilem skrypt do modyfikacji tego wpisu , teorytycznie wg. mnie jest dobry tylko cos nie dziala o to skrypt: <? $dane="$id||$nazwa||$rodzaj||$cd||$autor||2||n"; $dfile="gry/gry.db"; } $file = file($dfile); $total = count($file); for($i=0; $total > $i; $i++){ $split = explode("||", $file[$i]); if($split[0] == "$id"){ $przed = "$split[0]||$split[1]||$split[2]||$split[3]||$split[4]||$split[5]||n"; $po = "$dane"; $fp = fopen($dfile, "r"); flock($fp,1); $zaw = fread($fp, filesize($dfile)); fclose($fp); $po = str_replace("$przed","$po", $zaw); $fp = fopen($dfile, "w"); flock($fp,2); fwrite($fp, $po); fclose($fp); echo"<center>Zmiany zostały zapisane"; } ?> moze wiecie jak mi pomoc (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) lub znacie jakis inny sposob na modyfikowanie danej linijki ? |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 456 Pomógł: 0 Dołączył: -- Ostrzeżenie: (0%)
|
Cytat problem taki:
w pliku dane sa tak zapisywane: nr||nazwa||rodzaj||ile||autor||nr2 i zrobilem skrypt do modyfikacji tego wpisu , teorytycznie wg. mnie jest dobry tylko cos nie dziala o to skrypt: <? $dane="$id||$nazwa||$rodzaj||$cd||$autor||2||n"; te wszystkie zmienne zakladam ze masz gdzies zadeklarowane? Cytat $dfile="gry/gry.db";
} po co ta klamra? Cytat $file = file($dfile);
$total = count($file); for($i=0; $total > $i; $i++){ $split = explode("||", $file[$i]); if($split[0] == "$id"){ $przed = "$split[0]||$split[1]||$split[2]||$split[3]||$split[4]||$split[5]||n"; jak sie juz uparles tak to dlaczego nie $przed=$file[$i] Cytat $po = "$dane"; $fp = fopen($dfile, "r"); flock($fp,1); $zaw = fread($fp, filesize($dfile)); fclose($fp); $po = str_replace("$przed","$po", $zaw); $fp = fopen($dfile, "w"); flock($fp,2); fwrite($fp, $po); fclose($fp); echo"<center>Zmiany zostały zapisane"; } brakuje zamkniecia klamra petli for() Cytat ?>
moze wiecie jak mi pomoc (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) lub znacie jakis inny sposob na modyfikowanie danej linijki ? strasznie dziwnie do tego podchodzisz 8O np: Kod <? jedna z mozliwosci
$idLiniDoZmiany=13; $daneDoZmiany="13||autor||tytul||cd||cosTamPoZmianien"; $plik='plik.db'; $f=file($plik); for($i=0;$i<count($f);$i++){ $ex=explode('||',$f[$i]); if($ex[0]==$idLiniDoZmiany){ $f[$i]=$daneDoZmiany; break; } } $fp=fopen($plik,"w"); fwrite($fp,implode('',$f)); fclose($fp); ?> :wink: |
|
|
|
Ma4el modyfikacja linijki w pliku 16.10.2002, 12:32:40
Ma4el nikt mi nie pomoze ;( 16.10.2002, 13:38:40
zombie CZ! Najprosciej bedzie zrobic kazda linijke w osob... 16.10.2002, 13:55:39
Ma4el zle zapytalem...chodzi mi o zmiane jakiegos pola w... 16.10.2002, 14:07:29
zombie Cytatzle zapytalem...chodzi mi o zmiane jakiegos p... 17.10.2002, 08:22:20
Ma4el thx man !! dziala ok 17.10.2002, 18:37:52
RaZor Naprawde ciekawe.
CytatKod$plik = fopen("d... 17.10.2002, 22:04:28
zombie CytatNaprawde ciekawe.
CytatKod$plik = fopen(... 18.10.2002, 08:22:15
castor CytatNaprawde ciekawe.
CytatKod$plik = fopen(... 18.10.2002, 10:46:08
RaZor Cytatspoko...
...tylko ze file() przy B.DUZYCH p... 18.10.2002, 10:58:53
castor CytatTak, a co gdy :
- w pliku mamy jedną B... 18.10.2002, 11:04:25 ![]() ![]() |
|
Aktualny czas: 25.12.2025 - 15:42 |