Emfanish sigekrimenon grammon apo FLAT arxeio...

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Άβαταρ μέλους
ZauZ
Δημοσιεύσεις: 408
Εγγραφή: 12 Οκτ 2003 23:29
Τοποθεσία: Ηράκλειο
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από ZauZ » 05 Αύγ 2004 20:25

Epidi de katafera na bro mesa sto forum tipota tetio (gia tin akrivia vrika kati alla de doylevei...) rixno edo tin aporeia moy.

Loipon : Exo kanei mia forma poy sozei mesa se ena flat arxeio . (cat1.txt) 3 pragmatakia me ti parakato morfi

Onoma||Dieythinsi||Tilefono
Onoma2||Dieythinsi2||Tilefono2
Onoma3||Dieythins3i||Tilefono3
Onoma4||Dieythins4i||Tilefono4

Ta || ta evala gia na xrisimopihso tin entoli explode() oste na moy ta emfanizei

Onoma
Dieythinsi
Tilefono
-------------
Onoma2
Dieythinsi2
Tilefono2
------------- k.t.l k.t.l

Ola orea kai kala , leitoyrgoyn ola sosta . Exo kanei loipon kai ena arxeio (see.php) poy emfanizei tis parakato eggrafes.

To flat .txt arxeio exei p.x 20 eggrafes , alla ego de thelo na emfanizontai kai oi 20 eggrafes. ( h kathe eggrafi einai mia grami) alla thelo na emfanizontai oi 5 protes kai meta na vgazei kapio link p.x NEXT 5 kai na dixnei tis epomenes 5 k.o.k . (oysiastika thelo na diavazei tis protes 5 grammes tou flat arxeioy meta tis alles 5 k.t.l)


O Kodikas poy diavazei to .txt arxeio einai o parakato :

<?

$Lines = file("cat1.txt");
foreach($Lines as $Key => $Val)

{
$Data[$Key] = explode("||", $Val);
}

for($K = 0; $K < sizeof($Lines); $K++)

{
echo '<p>';
echo 'ONOMA: '.$Data[$K][0].'<br>';
echo 'DIEYTHINSH: '.$Data[$K][1].'<br>';
echo 'THLEFONO: '.$Data[$K][2].'<br>';
echo '</p>';
}

?>

Borei kapios na me voithisei se ayto ?
Isos na einai gelio , alla prospathoume na mathoume :)
https://www.pelatologio.gr - Online τιμολόγηση, διαχείριση αποθήκης και υποχρεώσεων

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από soteres2002 » 05 Αύγ 2004 21:56

mia lisi pou mou irthe tora sto mialo einai i ekseis. tha doulebeis me queries kai tha kanoume increment se dio metablites, tha doulepsoume me brogxo kai idou o kodiks!

Katarxin tha sou protina na kaneis to eksis. anti na baleis diaxoristi protimpou (||) tha itan taxitero gia tin CPU an ekanes px Onoma<br>Tilefono<br>Odos ktl.

Pame tora ston kodika.

<?php

error_reporting(E_PARSE);
$yourfile = @file("/path/to/your/file.txt");

if($yourfile) {
//efolebmeno if clause
if(!$p1 && !$p2) {
for($i =0; $i <= 4; $i++) {
print $yourfile[$i]."<br>\n"; //tiponi akthe grami poy pernei
//apo ton sisxetismeno pinaka
}
print "<a href=\"index.php?p1=5&p2=10\">epomena 5</a>";

} elseif($p1 && $p2) {
for($i = $p1; $i <= $p2; $i++) {
if($yourfile[$i] !== NULL) print $yourfile[$i];
//i alakse to se:
//if($yourfile[$i]) print $yourfile[$i];
//oti agapas...
//kanoume kai elegxo an mas teliosan oi grammes
}
$p1 += 5;
$p2 += 5;
print "<a href=\"index.php?p1=$p1&p2=$p2>epomena 5</a>";
}
} else {
//exception
print "Error reading file!";
}
?>

opos gnorizeis ta stixeia ton pinakon arxizoun apo to 0, gia to logo auto ston brogxo dino value 0 sto $1 kai sti sinexeis sta bimata $4, diladi pente grammes. meta kano increment kata 5 kai ginete i ektiposi ton epomenon pente afou epilego arxei +5 gia to $p1 pou einai i arxi kai $p2 pou einai to telos.

den exo testarei an doulebei kala omos nomizo pos etsi prepei na ginei.
Nomizo pos se exo katatopisei!

Tora to mono pou sou menei na kaneis einai na kaneis explode() sisxetismeno pinaka kai sto for() na antikatastiseis to print ""; me to diko sou sto post.

OK? tha sinexiso abrio giati tora den exo poli xrono. ante bye.
Opos tha ksereis polla efolebmena for() mas g&******! Kalo lipon tha itane na akolouthisieis to paradigma. :wink:

Diladi an den exei oristei i arxi kai to telos san default pernoume tis pente protes

meta sinexizo os eksis:

0-4
5-10
15-20
25-30 kai paei legontas.

opos katalabeneis ginetai afksisi kata 5 stin timi.

Ki an thes na eisai akoma pio sostos, apo to php.ini tha theseis to register_globals se off gia na min bazoun kai oti theloune

Άβαταρ μέλους
ZauZ
Δημοσιεύσεις: 408
Εγγραφή: 12 Οκτ 2003 23:29
Τοποθεσία: Ηράκλειο
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από ZauZ » 06 Αύγ 2004 12:59

Thanks file moy gia ti voitheia , tha do ton kodika argotera , giati tora de prolaveno kai tha sou apantiso ! :)

Sigoura epivarinei ti CPU to diaxoristiko poy xrisimopio me tin explode() ? ... pantos ontos einai pio logiko kai pio eykolo to <br>.

Thanks gia ti voitheia! Tha to dokimaso to vradi mallon , kai tha soy po ! :)
https://www.pelatologio.gr - Online τιμολόγηση, διαχείριση αποθήκης και υποχρεώσεων

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από soteres2002 » 06 Αύγ 2004 20:18

ela, prin apo, ligo to ekana na doulebeim akribos opos to theleis:

Για αυτο που ειπες, φαντάσου να είχες 5.000 εγγραφές και με βρόγχο φορ να έκανες εκστράκτ τα δεδομένα! Εσύ τι λες; Δεν θα κράξει ο διακομιστής σου; Εδώ με βάση δεδομένων δεν είναι γρήγορο, με επίπεδο αρχείο θα είναι; Mono me ton for() tha kraksei! Gia fantasou me tin explode(). Tha gami*** :wink:

Me to neo script pou egrapsa den exeis auto to fobo afou 5 stixeia epeksergazesai kathe fora olo ki olo! Apofasisa na grapso kati pio simazemeno, pou oxi mono sou emfanizei tis grammes pou thes, alla elegxei kai an iparxoune parapano eggrafes. ennoo diladi oti an den exeis arketes eggrafes diladi ligoteres apo 5 kathe fora, einai logiko oti den tha exeis kai alles meta apo autes (ektos kai an afineis kenes grammes!). Sostos?

λοιπόν exeis ena arxeio pb.plib me ta dedomena sou, opos kai stin arxiki silipsi sou:

Κώδικας: Επιλογή όλων

Nick||Carter||04478745487887
Souzie||Tzoutzouka||58788547878
Natalie||Natalianis||44558741212
Robert||Jeff||4544754878
Mr J D||Noodie||547888+998
Nick||Carter||04478745487887
Souzie||Tzoutzouka||58788547878
Natalie||Natalianis||44558741212
Robert||Jeff||4544754878
Mr J D||Noodie||547888+998
Nick||Carter||04478745487887
Souzie||Tzoutzouka||58788547878
Natalie||Natalianis||44558741212
Robert||Jeff||4544754878
Mr J D||Noodie||547888+998
Nick||Carter||04478745487887
Souzie||Tzoutzouka||58788547878
Natalie||Natalianis||44558741212
Robert||Jeff||4544754878
Mr J D||Noodie||547888+998
Nick||Carter||04478745487887
Souzie||Tzoutzouka||58788547878
Natalie||Natalianis||44558741212
Robert||Jeff||4544754878
Mr J D||Noodie||547888+998
kai to arxeio php anaylysis.php

Κώδικας: Επιλογή όλων

<?php 
/************************************* 
* Author&#58; SL Karavarsames 
* email&#58; soteres2002@greeknetizen.net 
* Descr&#58; sample function for Zauz shifts! 
* Ipotheto pos to trexeis se Linux 
* toulaxiston se emena doulebeim kanonika 
**************************************/ 


error_reporting&#40;E_PARSE&#41;; 
set_time_limit&#40;0&#41;; 

define&#40;SRCFILE,"pb.plib"&#41;; 
define&#40;COF_EXCEPTION,"&#916;&#949;&#957; &#956;&#960;&#959;&#961;&#949;&#943; &#957;&#945; &#945;&#957;&#959;&#943;&#958;&#949;&#953; &#964;&#959; &#945;&#961;&#967;&#949;&#943;&#959; &#960;&#961;&#959;&#941;&#955;&#949;&#965;&#963;&#951;&#962;!"&#41;; 


clearstatcache&#40;&#41;; //clear cache 
$lines = file&#40;SRCFILE&#41;; //grab lines 


if&#40;$lines&#41; &#123; 
      print count&#40;$lines&#41;." &#949;&#947;&#947;&#961;&#945;&#966;&#941;&#962; &#947;&#953;&#945; &#949;&#956;&#966;&#940;&#957;&#953;&#963;&#951;...<BR><BR>"; 
      if&#40;!$s && !$e&#41; &#123; 

      for&#40;$i = 0; $i <= 4; $i++&#41; &#123; 
         if&#40;$lines&#91;$i&#93; !== NULL&#41; &#123; 
            $printLink = true; 
            $parts = explode&#40;"||",$lines&#91;$i&#93;&#41;; 
            print "&#908;&#957;&#959;&#956;&#945;&#58; ".trim&#40;$parts&#91;0&#93;&#41;."<BR>"; 
            print "&#917;&#960;&#943;&#952;&#949;&#964;&#959;&#58; ".trim&#40;$parts&#91;1&#93;&#41;."<BR>"; 
            print "&#932;&#951;&#955;&#941;&#966;&#969;&#957;&#959;&#58; ".trim&#40;$parts&#91;2&#93;&#41;."<BR>"; 
            print "<hr><br>";             
         &#125; else &#123; 
            $printLink = false; 
         &#125; 
      &#125; 
    
      if&#40;$printLink=="true"&#41; &#123; 
         print "<a href=analysis.php?s=5&e=10</a>"; 
      &#125; else &#123; print "&#924;&#945;&#962; &#964;&#949;&#955;&#949;&#943;&#969;&#963;&#945;&#957; &#959;&#953; &#949;&#947;&#947;&#961;&#945;&#966;&#941;&#962;!"; &#125; 

   &#125; elseif&#40;$s && $e&#41; &#123; 
    
      for&#40;$i = $s; $i <= $e-1; $i++&#41; &#123; 
         if&#40;$lines&#91;$i&#93; !== NULL&#41; &#123; 
            $printLink = true; 
            $parts = explode&#40;"||",$lines&#91;$i&#93;&#41;; 
            print "&#908;&#957;&#959;&#956;&#945;&#58; ".trim&#40;$parts&#91;0&#93;&#41;."<BR>"; 
            print "&#917;&#960;&#943;&#952;&#949;&#964;&#959;&#58; ".trim&#40;$parts&#91;1&#93;&#41;."<BR>"; 
            print "&#932;&#951;&#955;&#941;&#966;&#969;&#957;&#959;&#58; ".trim&#40;$parts&#91;2&#93;&#41;."<BR>"; 
            print "<hr><br>";             
         &#125; else &#123; 
            $printLink = false; 
         &#125; 
      &#125; 

      $s += 5; //afksisi kata 5ades 
      $e += 5; 
    
      if&#40;$printLink=="true"&#41; &#123; 
         print "<a href=analysis.php?s=$s&e=$e>next 5</a>"; 
      &#125; else &#123; 
         print "&#916;&#949;&#957; &#965;&#960;&#940;&#961;&#967;&#959;&#965;&#957;&#949; &#940;&#955;&#955;&#949;&#962; &#949;&#947;&#947;&#961;&#945;&#966;&#941;&#962;!"; 
      &#125; 
   &#125; 

&#125; else &#123; 
    
   print COF_EXCEPTION; 

&#125; 


?>

Se kathe periptosi, se auto to stil prepei na doulepseis. Des pali kai to script, giati ekana kai akti diorthosis proigoumenos...

Epidi tixainei na programmatizo kai se ASP.NET kai JSP, an to thes se mia apo autes tis glosses, pes mou. Fisika tha borousa kai se VBScript na to kano, alla thelei allilepidrasi me ActiveX, opote asto...

Enjoy!

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από Rapid-eraser » 06 Αύγ 2004 21:14

exm basika egw 8a protiva va xrisimopieis tnv explode afoba.
oso gia to baros stov server av eivai kala configed 8a exei memory limit kai cpu limit sto ka8e prosses opote dev exeis va fobase tpt (av eivai aksiopistos o server)

twra n prosegkisi pou sou divo egw eivai kapos pio apli kai sigoura pio eukoli. sigoura bebea o tropos meta streams eivai pio programatistika sostos
alla o tropos pou 8a sou pw egw eivai pio xristikos stnv php ka8oti eivai sxediasmevi va leitourgei kalitera me tov sigkekrimevo tropo.

lipov avti va xrisimimopiiseis tnv prosegkisi tou stream protivo tnv prosegkisi tou array.
ti evoo me afto avti va paizeis me to stream sou va baleis ta periexomeva tou arxeiou sou se eva array
edo bon8aei poli n idia php pou to exei skeftei idi afto.
exoume lipov tnv function file()
afti simfova me to manual 8a aprei eva arxeio kai 8a mas epistrepsei eva array opou ka8e grami tou
8a exei to periexomevos mias gramis (grami 8eoroume otidipote kataligei se \n kai \r\n)
epomemenos

Κώδικας: Επιλογή όλων

$rows = array&#40;&#41;;
$rows = file&#40;$pathtofile&#41;;
twra gia to ipolipo eivai sxetika aplo

xrisimopieis eva offset eva var dld pou 8a sou divei eva voumero gia to pou briskese mesa sto array pou 8a to pervas apo selida se selida me get
epomevos see.php?offset=xxx

mesa stov kodika sou 8a mporeis me afto va paizeis gia to pies egrafes va sou dixvei

Κώδικας: Επιλογή όλων

<?
$step = 5;

$offset = &#40;int&#41;$_GET&#91;"offset"&#93;;
if&#40;$offset<0&#41;&#123; $offset = 0; &#125;

$rows = array&#40;&#41;;
$rows = file&#40;"/path/to/file"&#41;;

$rows_count = count&#40;$rows&#41;; // eivai to idio me tnv sizeof

for&#40;$i=$offset;$i<$i+$step;$i++&#41;&#123;
/*
fisika mporeis to output va to baleis se eva array
va fevete pio omorfo to afivo dump etsi egw gia
pio grigora kai pio safes tou ti periexei
*/
$parts = array&#40;&#41;;
$parts = explode&#40;"||", $rows&#91;$i&#93;&#41;;
?>
Όνομα&#58; <?=$parts&#91;0&#93;;?>
Επίθετο&#58; <?=$parts&#91;1&#93;;?> 
Τηλέφωνο&#58; <?=$parts&#91;2&#93;;?>
<?&#125;
?>
twra gia to mpros piso eivai poli aplo apla se ka8e eva 8a pros8eseis
tnv timi tou offset + to step n - to step avaloga dld me tnv katef8vsi

Κώδικας: Επιλογή όλων

$priv = $offset - $step;
$next = $offset + $step;
opote to parapavo to bazeis sto html sou stnv parapavo 8esi
kavovtas echo tis metablites sto divamiko meros tous html kodika sou

sigoura bebea n ekdoxi pou sou divo eivai baria stnv mvimi giati fortoveis olo to periexomevo tou arxeiou kai oxi meros opos kaveis me to stream alla eivai pio aplo stnv logiki tou. alloste n php 8elei aplotita taxitita exei outos n allos. eivai problima pavtos o tropos me ta arxeia giati eivai poli problimatikes aftes n texvikes kai apo tnv stigmi pou iparxouve oi database dev xriazete va efebriskoume tov troxo pali !!!
dokimase kai me mysql kai 8a tnv latrepseis ... gevikotera oi sql
prosegkiseis eivai poli taxiteres kai poli pio ka8ares apo apopsi kodika
keepup !!!
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από soteres2002 » 06 Αύγ 2004 21:30

ego ekana eksagogi 500 grammes string apo mysql kai egkakse mexri na tis emfanisei auto pou ithela. Simiono oti exo kai broadband sindesi.

Άβαταρ μέλους
Rapid-eraser
WebDev Moderator
Δημοσιεύσεις: 6851
Εγγραφή: 05 Απρ 2003 17:50
Τοποθεσία: Πειραιάς
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από Rapid-eraser » 06 Αύγ 2004 21:34

dev katalaba, ti akribos evoeis ?
Cu, Rapid-eraser, Tα αγαθά copies κτώνται.
Love is like oxygen, You get too much you get too high
Not enough and you're gonna die, Love gets you high

Άβαταρ μέλους
ZauZ
Δημοσιεύσεις: 408
Εγγραφή: 12 Οκτ 2003 23:29
Τοποθεσία: Ηράκλειο
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από ZauZ » 07 Αύγ 2004 14:39

Thanks pedes gia ti voitheia ! Eiste apsogoi !

yg: Kano dokimes sto spiti moy , se Windows :( , exo valei ton apache. , alla o server moy einai stou Mike se Linux :)

Telika de vrika akoma xrono na ta tsekaro giati trexo... simera p.x se merikes ores exo na pao sti vaptish toy anipsiou mou...

:)
Loipon , tha epaneltho lian sintomos ! :)
thanks kai pali.
https://www.pelatologio.gr - Online τιμολόγηση, διαχείριση αποθήκης και υποχρεώσεων

Άβαταρ μέλους
iNDEFiX
Honorary Member
Δημοσιεύσεις: 2569
Εγγραφή: 20 Δεκ 2002 00:48
Τοποθεσία: κλειστή λόγω έργων
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από iNDEFiX » 07 Αύγ 2004 19:23

Kati pio mikro kai aplo. Ta links "previous" kai "next" apenergopoiounte stis arxikes kai telikes engrafes adistixa.

Κώδικας: Επιλογή όλων

<?
$items = 3;
$dfile = "data.txt";

if&#40;!$s&#41;&#123;$s=0;&#125;
$n = $s+$items;
$p = $s-$items;

$data       = file&#40;$dfile&#41;;
$countlines = count&#40;$data&#41;;
$outlines   = $countlines/$items;

if&#40;$p>=0&#41;&#123;
	echo"<a href='$PHP_SELF?s=$p'>Previous</a> ... ";
&#125;else&#123;  echo"Previous ... ";&#125;

if&#40;$n<$countlines&#41;&#123;
	echo"<a href='$PHP_SELF?s=$n'>Next</a>";
&#125;else&#123;  echo"Next";&#125;

echo "<br><br>";
for&#40;$i=$s;$i<=$countlines && $i<$n;$i++&#41;&#123;
	$out = explode&#40;"||",$data&#91;$i&#93;&#41;;
	echo "$out&#91;0&#93; $out&#91;1&#93; $out&#91;2&#93; $out&#91;3&#93;<br>";
&#125;
?>
Opou data.txt to parakato endiktiko arxeio:

1||onoma||eponymo||thlefono
2||onoma||eponymo||thlefono
3||onoma||eponymo||thlefono
4||onoma||eponymo||thlefono
5||onoma||eponymo||thlefono
6||onoma||eponymo||thlefono
7||onoma||eponymo||thlefono
8||onoma||eponymo||thlefono

Άβαταρ μέλους
soteres2002
S. & H. Moderator
Δημοσιεύσεις: 1524
Εγγραφή: 05 Μαρ 2004 22:17
Τοποθεσία: Ιωάννινα

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από soteres2002 » 12 Αύγ 2004 23:15

sosta! ki ego kapos etsi to skeftika pio meta apo tis 2 dimosiefseis mou. Diladi na metras tis grammes apo ton pinaka kai na diaireis... genika olo auto pou egrapses. sostos...

Άβαταρ μέλους
ZauZ
Δημοσιεύσεις: 408
Εγγραφή: 12 Οκτ 2003 23:29
Τοποθεσία: Ηράκλειο
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από ZauZ » 16 Αύγ 2004 22:25

Thanks pedes ! Eiste apsogoi !
To eftiaksa to atimo to programmataki !

Ipotheto katalavate oti eithela na ftiakso ena tilefoniko katalago ! O Logos oxi poli simantikos ,alla moy elise (moy lisate) ta xeria.

Ayto poy eithela na ftiakso itan enan katalogos oste na boro na ton exo sinexeia anixto sto pc moy , xoris na xriazete na trexo kapio programma sinexeia. (ena parathiro toy explorer mono ! )

Afiste kai ti dinatotita na ensomatosis mia selida stin epifania ergasias soy ! :)

Thanks again
https://www.pelatologio.gr - Online τιμολόγηση, διαχείριση αποθήκης και υποχρεώσεων

Άβαταρ μέλους
iNDEFiX
Honorary Member
Δημοσιεύσεις: 2569
Εγγραφή: 20 Δεκ 2002 00:48
Τοποθεσία: κλειστή λόγω έργων
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από iNDEFiX » 17 Αύγ 2004 21:10

Kanonise na pame gia kanena mpanaki tora pou eimai Ierapetra remale :D

Άβαταρ μέλους
ZauZ
Δημοσιεύσεις: 408
Εγγραφή: 12 Οκτ 2003 23:29
Τοποθεσία: Ηράκλειο
Επικοινωνία:

Emfanish sigekrimenon grammon apo FLAT arxeio...

Δημοσίευση από ZauZ » 17 Αύγ 2004 23:03

LoL !!! Poli tha to ithela , alla atixises :)))

Pao Irakleio avrio ! Telos to kalokairi gia emena !
Ta kefalia mesa ... (poso pio mesa pleon...) :P

xeretismata!
https://www.pelatologio.gr - Online τιμολόγηση, διαχείριση αποθήκης και υποχρεώσεων

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης