Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> zepsuty warunek? pewnie to ja... :P
goped
post 2.06.2006, 23:32:22
Post #1





Grupa: Zarejestrowani
Postów: 156
Pomógł: 0
Dołączył: 28.11.2003
Skąd: gliwice

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


Hello, zaczne od kodu tongue.gif
  1. <?
  2. $name=explode(".", $id); // kasowanie linijki z menu
  3. $menu="../base/menu.txt";
  4. $plik=file($menu);
  5. $count=count($plik);
  6. $a="0";
  7. while($a<=$count)
  8. {
  9. $dane=explode("||", $plik[$a]);
  10.  
  11. if($name[0]==$dane[1]) <----- ten warunek
  12. {
  13. echo"warunek dziala"; // koniec kasowania linijki z menu
  14. }
  15. $a++;
  16. }
  17. ?>

$id to cos.php
plik menu.txt wyglada tak COS||cos

No i co tu duzo mowic, warunek nigdy nie przechodzi. Moze macie jakies pomysly?tongue.gif Z gory thx tongue.gif

Ten post edytował goped 2.06.2006, 23:34:30


--------------------
www.motorower.com.pl - kup sobie cos :]
Go to the top of the page
+Quote Post
acztery
post 2.06.2006, 23:36:18
Post #2





Grupa: Zarejestrowani
Postów: 945
Pomógł: 7
Dołączył: 15.03.2005
Skąd: katowice

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


rozumiem ze chcesz sprawdzic czy cos jest identyczne wtedy === a nie ==
Go to the top of the page
+Quote Post
goped
post 2.06.2006, 23:48:23
Post #3





Grupa: Zarejestrowani
Postów: 156
Pomógł: 0
Dołączył: 28.11.2003
Skąd: gliwice

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


=== sprawdza czy typ jest ten sam, == rowniez moze byc. Jezeli nie dziala z == to z === tez nie bedzie, zreszta, sprawdzalem tongue.gif


--------------------
www.motorower.com.pl - kup sobie cos :]
Go to the top of the page
+Quote Post
NuLL
post 2.06.2006, 23:49:39
Post #4





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


  1. <?
  2. $name=explode(".", $id); // kasowanie linijki z menu
  3. $menu="../base/menu.txt";
  4. $_file=file($menu);
  5. foreach($_file as $line)
  6. {
  7. $data=explode("||",$line);
  8.  
  9. if($data[0]!=$name) $ret[]=$line;
  10. }
  11. ?>

Oczywiscie zgaduje ale w tablicy $ret powinien byc plik bez danej linii smile.gif


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
Go to the top of the page
+Quote Post
goped
post 2.06.2006, 23:51:41
Post #5





Grupa: Zarejestrowani
Postów: 156
Pomógł: 0
Dołączył: 28.11.2003
Skąd: gliwice

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


A moze jednak ktos wymysli dlaczego nie dziala moj warunek?tongue.gif


--------------------
www.motorower.com.pl - kup sobie cos :]
Go to the top of the page
+Quote Post
NuLL
post 2.06.2006, 23:53:01
Post #6





Grupa: Zarejestrowani
Postów: 2 262
Pomógł: 21
Dołączył: 3.05.2004
Skąd: Sopot, Krakow, W-wa

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


Nie powinno byc $dane[0] questionmark.gif Pozatym powinno być $a=0; zamiast $a="0";


--------------------
Javascript, Coffeescript, Node.js, Mongo, CouchDb, chmury, workery & inne bajery - zycie jest zbyt krotkie aby miec nudna prace :)
Go to the top of the page
+Quote Post
goped
post 3.06.2006, 00:39:18
Post #7





Grupa: Zarejestrowani
Postów: 156
Pomógł: 0
Dołączył: 28.11.2003
Skąd: gliwice

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


dane[1], bo chce tekst po prawej stronie COS||cos, a z tym $a to tez nie dziala tongue.gif fajne, co nie?tongue.gif


--------------------
www.motorower.com.pl - kup sobie cos :]
Go to the top of the page
+Quote Post
raf_gc
post 3.06.2006, 05:48:03
Post #8





Grupa: Zarejestrowani
Postów: 33
Pomógł: 0
Dołączył: 12.05.2006

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


  1. <?php
  2. $id = "cos.php";
  3. $name=explode(".", $id); // kasowanie linijki z menu
  4. $menu="menu.txt";
  5. $plik=file($menu);
  6. $count=count($plik);
  7. $a="0";
  8. while($a<=$count)
  9. {
  10. $dane=explode("||", $plik[$a]);
  11.  
  12. if($name[0]==$dane[1]) //<----- ten warunek
  13. {
  14. echo"warunek dziala"; // koniec kasowania linijki z menu
  15. }
  16. $a++;
  17. }
  18. ?>

sprawadziłem twój skrypt i działa dobrze, w jaki sposób deklarujesz zmienną $id, jeśli $id jest puste to warunek nie bedzie spełniony nigdy, czy scieżka do pliku menu.txt jest prawidłowa?

Zrób tak jak ja w tym skrypcie, zdefiniuj na początku zmienną $id i sprawdź, czy dalej nie działa, przenieś plik menu.txt do katalogu ze skryptem (dla testów).

Jesli pobierasz zmienną $id z parametrów wywołania skryptu (np: index.php?id=cos.php) to musisz użyć:
  1. <?php
  2. $id = $_GET['id'];
  3. ?>


Ten post edytował raf_gc 3.06.2006, 05:51:46
Go to the top of the page
+Quote Post
goped
post 3.06.2006, 17:24:56
Post #9





Grupa: Zarejestrowani
Postów: 156
Pomógł: 0
Dołączył: 28.11.2003
Skąd: gliwice

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


To teraz juz wiem co sie stalo i wam powiem :] normalnie padniecie <lol2> angrysmiley.gif angrysmiley.gif angrysmiley.gif ale najpierw:
  1. <?php
  2. $id = "h.php";
  3. $name=explode(".", $id); // kasowanie linijki z menu
  4. $menu="menu.txt";
  5. $plik=file($menu);
  6. $count=count($plik);
  7. $a="0";
  8. while($a<=$count)
  9. {
  10. $dane=explode("||", $plik[$a]);
  11. echo $dane[1].$name[0];
  12. if($name[0]==$dane[1]) //<----- ten warunek
  13. {
  14. echo"warunek dziala"; // koniec kasowania linijki z menu
  15. }
  16. $a++;
  17. }
  18. ?>

Menu.txt:
  1. A||a
  2. B||b
  3. C||c
  4. H||h
  5. D||d

Wynik dzialania:
  1. a
  2. hb
  3. hc
  4. hh
  5. hdhh

Kto wymysli dlaczego na koncu mam te 2 hh to ma 6 za odpowiedz. Jedno h ma prawo byc, ale drugie nie wiem skad sie bierze.
A teraz powiem wam czemu to nie dzialalo, bo komus moze tez kiedys cos takiego walnac. Plik Menu.txt wyglada tak:
A||a
B||b
C||c
H||h
D||d
php exploduje to przez znaczniki || i teraz tak, po lewej mamy A, ale poprawej nie jest "a", tam jest kurcze "a\n"(akurat u mnie jest \r\n), tyle ze \n jest niewidoczne. By to szlag trafil tongue.gif

Ten post edytował goped 3.06.2006, 18:15:00


--------------------
www.motorower.com.pl - kup sobie cos :]
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: 28.06.2025 - 12:28