Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] Edycja pliku
JOHNY
post 8.08.2003, 19:07:31
Post #1





Grupa: Zarejestrowani
Postów: 297
Pomógł: 0
Dołączył: 17.01.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


Mam pewien problem z edycją pliku sop.dat u qmpla chodzi pięknie ładnie na servie Kranal a u mnie nie i nie wiem dlaczego. Nawet po wrzuceniu plików na inny server pod linem i zedytowaniu wpisu nie zapisuje go

Oto potrzebne pliki:
sop.dat
Kod
namej|3834738|kam1lejszun@wp.pl|

namek|3834738|kam1lejszun@wp.pl|


sopdel.php:
[php:1:7987dd0703]
<?
echo "<table border="1" cellspacing="1" cellpadding="0" class="textbold"><tr align="center"><td>LP</td><td>Nick</td><td>Nr GG</td><td>E-mail</td></tr>";
$f=file("sop.dat");
for ($i=0; $i<count($f); $i++) {
$z=explode("|", $f[$i]);
echo "<tr class="tekst" align="center"><td>";
echo $i+1;
echo"</td><td>$z[0]</td><td>$z[1]</td><td>$z[2]</td></tr>";
}
$i++;
echo "</table>";
echo "<p class="tekst">Podaj LP do usuniecia<br></p>
<form action="sopusun.php" method="POST" >
<input name="lp">
<input type="submit" value="usuń" name="usunsop">
</form>";
echo "<p class="tekst">Podaj LP do edycji<br></p>
<form action="sopedytuj.php" method="POST" >
<input name="lp">
<input type="submit" value="edytuj" name="edytujsop">
</form>";
?>
[/php:1:7987dd0703]

sopusun.php:
[php:1:7987dd0703]
<?
$id2 = $_POST['lp'];
$id = $id2-1;
$dane=file("sop.dat");
unset($dane[$id]);
$file=fopen("sop.dat","w");
fwrite($file,str_replace("r","",join('',$dane)));
fclose($file);
echo "<p class="windows">AKTUALNIE LISTA SUPER OP-ÓW WYGLˇDA TAK:</p><BR><table border="1" cellspacing="1" cellpadding="0" class="textbold"><tr align="center"><td>LP</td><td>Nick</td><td>Nr GG</td><td>E-mail</td></tr>";
$f=file("../sop/sop.dat");
for ($i=0; $i<count($f); $i++) {
$z=explode("|", $f[$i]);
echo "<tr class="tekst" align="center"><td>";
echo $i+1;
echo "</td><td>";
echo $z[0];
echo "</td><td>";
echo $z[1];
echo "</td><td>";
echo $z[2];
echo "</td></tr>";
}
$i++;
echo "</table>";
?>
[/php:1:7987dd0703]

sopedytuj.php:
[php:1:7987dd0703]
<?
$dane=("sop.dat");
$dane1=file($dane);
$id2 = $lp;
$id = $id2-1;
if($akcja=="zapisz_edycje") {
$z=explode("|", $dane1[$id]);
$after="$z[0]|$z[1]|$z[2]|n";
$before="$nick|$gg|$email|n";
$fp=@fopen($dane, "r");
$a=fread($fp, filesize($dane));
flock($fp,"1");
@fclose($fp);
$before=str_replace("$after","$before",$a);
$fopen=@fopen($dane,"w");
flock($fopen,"2");
fwrite($fopen, $before);
flock($fopen,"3");
@fclose($file);
echo"Zapisane!<br><a href='sopdel.php'>OK</a>";
} else {

$z=explode("|", $dane1[$id]);

echo"Edycja LP: $id2<BR><form action='sopedytuj.php?akcja=zapisz_edycje&lp=$id2' method='post'>Nick:<input name='nick' value='$z[0]' type='text'><BR>GG:<input name='gg' value='$z[1]' type='text'><BR>e-mail:<input name='email' value='$z[2]' type='text'><BR><input type='submit' value='zapisz edycje'></form>";
echo "<tr class="tekst" align="center"><td>"; }

?>
[/php:1:7987dd0703]

Nie wiem co jest nie tak bo wszystko jest pięknie ładnie jak chcę edytować pokazuje mi zawartość konkretnego LP ale nie chce go poprawić po zapisaniu.

Czy mógłby ktoś to sprawdzić u siebie na servie i ewentualnie poprawić sopedytuj.php jeśli jest tam coś źle. (register_global mam włączone jak coś)
Go to the top of the page
+Quote Post
JOHNY
post 10.08.2003, 08:22:54
Post #2





Grupa: Zarejestrowani
Postów: 297
Pomógł: 0
Dołączył: 17.01.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


widze ze nikomu się nie chce sprawdzić tego dlaczego na krasnalu działa na zwykłym servie nie. Albo w php.ini trzeba coś włączyć lub w apachu wie ktoś czy nie questionmark.gif
Go to the top of the page
+Quote Post
cahe
post 10.08.2003, 10:17:25
Post #3





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


Cytat
widze ze nikomu się nie chce sprawdzić tego dlaczego na krasnalu działa na zwykłym servie nie. Albo w php.ini trzeba coś włączyć lub w apachu wie ktoś czy nie questionmark.gif


Brrr... ten kod aż zniechęca do czytania. Naucz się pisać ładnie (tak btw.) - dobra rada na przyszłość, zobacz:

[php:1:f12b3384af]<?php
$cistam = 1;
$costam = 2;
$plik = fopen($costam, "wb");
if($plik){
costam();
echo('costam');
if($cosstam2){
echo($Ecosta);
}}

?>[/php:1:f12b3384af]

To jest kod brzydki. Teraz to samo:

[php:1:f12b3384af]<?php
////////////////////////////////////////////////////
//Plik do obsługi edycji z poziomu php
////////////////////////////////////////////////////
//Opis ... opis...
//Opis...
////////////////////////////////////////////////////

$cistam = 1;
$costam = 2;

$plik = fopen($costam, "wb"); //Otwieramy plik do zapisu

if(!empty($plik)) // Jeśli się udało
{
costam();
echo('costam');

.... // + komentarze do mniej oczywistych rzeczy

if($cosstam2)
{
echo($Ecosta);
}
}

fclose($plik);
?>[/php:1:f12b3384af]

Prawda że widać różnice? A teraz pomyśl co było by z bardziej skomplikowanym skryptem...
Go to the top of the page
+Quote Post
cahe
post 10.08.2003, 11:08:46
Post #4





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


No i jeszcze jedno: staraj się nie mieszać php i HTML jeśli to nie konieczne. A gdybyś musiał to zrobić to estetyczniej wygląda:

[php:1:3282e748b3]<?php
echo('
<p align="center"><font color="red">Costam</font></p>
<form action="index.php" method="POST">
<input type="hidden" value="' . $zmienna . '" name="costam">');
?>[/php:1:3282e748b3]

Niż:

[php:1:3282e748b3]<?php
echo("<p align="center"><font color="red">Costam</font></p><form action="index.php" method="POST"><input type="hidden" value="$zmienna" name="costam">');
?>[/php:1:3282e748b3]

Nie uważasz?

A przecież można to zrobić tak:

Kod
<p align="center"><font color="red">Costam</font></p>

<form action="index.php" method="POST">

<input type="hidden" value="<?=$zmienna?>" name="costam">

Czyli minimalna ilość kodu php pośród HTML, a nie odwrotnie.
Go to the top of the page
+Quote Post
JOHNY
post 11.08.2003, 08:12:31
Post #5





Grupa: Zarejestrowani
Postów: 297
Pomógł: 0
Dołączył: 17.01.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


Ok postaram się dostosować na przyszłość ale pytanie jest z goła inne. Powtórze więc jeszcze raz.

[b]Dlaczego na Krasnalu ten strypt działa i zapisuje edycje pliku a na osobno zainstalowanych składnikach nie. Czy mógłby ktoś to sprawdzić u siebie na servie czy działa. (moze coś z konfiguracją apache lub php nie tak. questionmark.gif
Go to the top of the page
+Quote Post
cahe
post 11.08.2003, 09:48:43
Post #6





Grupa: Zarejestrowani
Postów: 223
Pomógł: 0
Dołączył: 22.03.2003

Ostrzeżenie: (0%)
-----


[quote]Ok postaram się dostosować na przyszłość ale pytanie jest z goła inne. Powtórze więc jeszcze raz.

[b]Dlaczego na Krasnalu ten strypt działa i zapisuje edycje pliku a na osobno zainstalowanych składnikach nie. Czy mógłby ktoś to sprawdzić u siebie na servie czy działa. (moze coś z konfiguracją apache lub php nie tak. questionmark.gif

Taaaaaa... teraz to już wszyscy normalni ludzie "rzucą" się do odpowiedzi.
Go to the top of the page
+Quote Post
kurtz
post 11.08.2003, 11:22:01
Post #7





Grupa: Przyjaciele php.pl
Postów: 786
Pomógł: 0
Dołączył: 18.03.2002
Skąd: Wroclaw/Warszawa

Ostrzeżenie: (0%)
-----


Cytat
Mam pewien problem z edycją pliku sop.dat u qmpla chodzi pięknie ładnie na servie Kranal a u mnie nie i nie wiem dlaczego.
Zajrzyj do przyklejonych na tym forum watkow. I na boga.. kulturki troche.. Chyba ze zalezy tobie zeby uzyskac tytul buora roku ;)


Pozdrawiam


--------------------
.. make web your home ..
Go to the top of the page
+Quote Post
JOHNY
post 12.08.2003, 09:15:46
Post #8





Grupa: Zarejestrowani
Postów: 297
Pomógł: 0
Dołączył: 17.01.2003
Skąd: Tarnów

Ostrzeżenie: (0%)
-----


Cytat
Cytat
Mam pewien problem z edycją pliku sop.dat u qmpla chodzi pięknie ładnie na servie Kranal a u mnie nie i nie wiem dlaczego.
Zajrzyj do przyklejonych na tym forum watkow. I na boga.. kulturki troche.. Chyba ze zalezy tobie zeby uzyskac tytul buora roku winksmiley.jpg


Pozdrawiam

Kulture to ja mam a pozatym nic takiego hamskiego nie napisałem. No chyba ze ja czytać nie umiem smile.gif
Ok nie ma sprawy zdziobie co i jak może coś znajdę dzieki kurtz
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 18.07.2025 - 04:18