Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Combo boxy i zawartosc z pliku
_scorpio__
post 12.08.2003, 22:24:29
Post #1





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 4.08.2003

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


Witam mam problem ze wstawianiem zawartosci pliku jako kolejne wartosci w combo boxie Ponizej przedstawiam kod
[php:1:6b8847b3fc]
<?
$file=fopen("aa.txt", "r"); //otwierasz zasob do pliku
flock($file, 1);
while (!feof ($file)) {
$linia = fgets($file, 1024);
echo $linia;
echo "<select NAME="eth0" SIZE="1">";
echo "<option VALUE="$linia">"$linia"</option>";
echo "</select> </td>";
}
flock($file, 3); // odblokowujesz plik
fclose($file); // zamykasz zasob
?>
[/php:1:6b8847b3fc]
Go to the top of the page
+Quote Post
dob
post 12.08.2003, 22:55:14
Post #2





Grupa: Zarejestrowani
Postów: 166
Pomógł: 0
Dołączył: 30.01.2003
Skąd: Warszawa

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


Rozumiem ze chcesz wyswietlic tyle elementów pola combo ile jest linii w pliku - jeżeli dobrze zrozumiałem to zobacz to :

[php:1:e409d5acdd]<?php
$linia=file("aa.txt");
$ile=count($linia);
echo "<select NAME="eth0" SIZE="1">";
for($i=0; $i<=$ile-1;$i++){
echo "<option VALUE="$linia[$i]">$linia[$i]</option>";
}
echo "</select>";
?>[/php:1:e409d5acdd]
Go to the top of the page
+Quote Post
_scorpio__
post 12.08.2003, 22:57:03
Post #3





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 4.08.2003

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


no dokladne o to mi chodzilo wielkie dzieki tylko moglbys objasnic co poszczegolne linie robia ?
Go to the top of the page
+Quote Post
cahe
post 12.08.2003, 23:02:14
Post #4





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

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


Może się myle - ale moim zdaniem lepsze jest...

[php:1:edd015e26e]<?php
$linia=file("aa.txt"); //Pobieramy plik do tablicy - kazda linijka to jeden element
echo ('<select NAME="eth0" SIZE="1">');
foreach($linia as $tmp) // Wyswietlamy kazdy element tablicy
{
echo ('<option VALUE="'. $tmp .'">'. $tmp .'</option>');
}
echo ('</select>');
?>[/php:1:edd015e26e]

Przede wszystkim bezpieczniej i dokładniej (twój kod chyba gubił jeden element).

UPDATE: poprawilem troche kod :-)
Go to the top of the page
+Quote Post
_scorpio__
post 12.08.2003, 23:04:01
Post #5





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 4.08.2003

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


no musze cache przyznac ze twoj przyklad jest mi przyjazniejszy smile.gif
Go to the top of the page
+Quote Post
cahe
post 12.08.2003, 23:05:13
Post #6





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

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


Cytat
no musze cache przyznac ze twoj przyklad jest mi przyjazniejszy smile.gif


I lepszy jakościowo :-). Szybszy pozatym. I w ogóle :-).

Mój nick to CAHE! :-)
Go to the top of the page
+Quote Post
_scorpio__
post 12.08.2003, 23:07:12
Post #7





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 4.08.2003

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


Panowie a jak zrobic teraz ze jak mam w pliku zapisane dane w postaci
Nazwisko || wy || o || 192.168.0.123
to zeby wyciagnac z tego ip i nazwisko i ip wstawic do comboboxa jako value ?
Go to the top of the page
+Quote Post
cahe
post 12.08.2003, 23:07:42
Post #8





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

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


Cytat
Panowie a jak zrobic teraz ze jak mam w pliku zapisane dane w postaci
Nazwisko || wy || o || 192.168.0.123
to zeby wyciagnac z tego ip i nazwisko i ip wstawic do comboboxa jako value ?


[manual:d58d9e1f3c]explode[/manual:d58d9e1f3c]

A jako value, to

Kod
<input ... value=$zmienna>
Go to the top of the page
+Quote Post
_scorpio__
post 12.08.2003, 23:08:59
Post #9





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 4.08.2003

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


hm to wiem ale nie wychodzi mi to zbytnio sad.gif
Go to the top of the page
+Quote Post
spenalzo
post 12.08.2003, 23:13:50
Post #10





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


Cytat
hm to wiem ale nie wychodzi mi to zbytnio sad.gif

Kiedy nauczysz się precyzować swoje problemy?


--------------------

Go to the top of the page
+Quote Post
_scorpio__
post 12.08.2003, 23:16:19
Post #11





Grupa: Zarejestrowani
Postów: 81
Pomógł: 0
Dołączył: 4.08.2003

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


Cytat
Cytat
hm to wiem ale nie wychodzi mi to zbytnio sad.gif

Kiedy nauczysz się precyzować swoje problemy?

No qrde nie ma co tam precyzowac nie wychodzi mi a konkretniej wyizolowanie tego ip z tego ciagu

[php:1:45e8e38d67]
<?
$file=fopen("dane.txt", "r");
flock($file, 1);

while (!feof ($file))
{
$linia = fgets($file, 1024);
if(trim($linia))
{
$czesci=explode("||", trim($linia));
$nazwa=trim($czesci[2]);
echo $nazwa;
?>
[/php:1:45e8e38d67]
taki mam kod
Go to the top of the page
+Quote Post
Nitro
post 13.08.2003, 05:54:33
Post #12





Grupa: Zarejestrowani
Postów: 56
Pomógł: 0
Dołączył: 10.03.2003
Skąd: Szczecin

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


[php:1:b742c32ff1]<?php
$linia=file("dane.txt");
foreach ($linia as $row)
{
$czesci=explode("||",trim($row));
echo "$czesci[2]<br />";
}
?>[/php:1:b742c32ff1]
Chociaż wydaje mi się, że lepiej użyć:
[php:1:b742c32ff1] list($zmienna1,$zmienna2,$ip, $zmienna3)=explode("||",trim($row)); [/php:1:b742c32ff1]
Go to the top of the page
+Quote Post
cahe
post 13.08.2003, 09:36:12
Post #13





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

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


Cytat
[php:1:6858549d46]<?php
$linia=file("dane.txt");
foreach ($linia as $row)
{
$czesci=explode("||",trim($row));
echo "$czesci[2]<br />";
}
?>[/php:1:6858549d46]
Chociaż wydaje mi się, że lepiej użyć:
[php:1:6858549d46] list($zmienna1,$zmienna2,$ip, $zmienna3)=explode("||",trim($row)); [/php:1:6858549d46]


Zgadzam się - funkcja file pewniejsza niż fgets (czesem pobierał mi więcej niż jedną linie).
Go to the top of the page
+Quote Post
spenalzo
post 14.08.2003, 00:56:44
Post #14





Grupa: Zarejestrowani
Postów: 2 064
Pomógł: 1
Dołączył: 22.01.2003
Skąd: Poznań

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


Cytat
Zgadzam się - funkcja file pewniejsza niż fgets (czesem pobierał mi więcej niż jedną linie).

Dokładnie, ponieważ funkcja [manual:aa9e601aef]fgets[/manual:aa9e601aef] pobiera żądaną ilość znaków z plik, domyślnie 1 kilobajt, czyli 1024 znaki.
Natomiast funkcja [manual:aa9e601aef]file[/manual:aa9e601aef] pobierze plik i podzieli go na linie niezależnie od ich długości.


--------------------

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.04.2024 - 00:35