_scorpio__
12.08.2003, 22:24:29
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]
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]
_scorpio__
12.08.2003, 22:57:03
no dokladne o to mi chodzilo wielkie dzieki tylko moglbys objasnic co poszczegolne linie robia ?
cahe
12.08.2003, 23:02:14
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 :-)
_scorpio__
12.08.2003, 23:04:01
no musze cache przyznac ze twoj przyklad jest mi przyjazniejszy
cahe
12.08.2003, 23:05:13
Cytat
no musze cache przyznac ze twoj przyklad jest mi przyjazniejszy

I lepszy jakościowo :-). Szybszy pozatym. I w ogóle :-).
Mój nick to CAHE! :-)
_scorpio__
12.08.2003, 23:07:12
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 ?
cahe
12.08.2003, 23:07:42
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>
_scorpio__
12.08.2003, 23:08:59
hm to wiem ale nie wychodzi mi to zbytnio
spenalzo
12.08.2003, 23:13:50
Cytat
hm to wiem ale nie wychodzi mi to zbytnio

Kiedy nauczysz się precyzować swoje problemy?
_scorpio__
12.08.2003, 23:16:19
Cytat
Cytat
hm to wiem ale nie wychodzi mi to zbytnio

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
Nitro
13.08.2003, 05:54:33
[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]
cahe
13.08.2003, 09:36:12
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).
spenalzo
14.08.2003, 00:56:44
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.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę
kliknij tutaj.