xarda Δημοσ. 9 Φεβρουαρίου 2011 Δημοσ. 9 Φεβρουαρίου 2011 Εχω γράψει κώδικα σε php. αυτο που κάνει είναι: 1) Κάνει parse μια σελίδα 2) Όσα εχουν γίνει parse τα αποθηκεύει με μια συνάρτηση write σε ενα αρχείο .txt 3) Θέλω λοιπον με μία συνάρτηση read να συγκρίνει όλα τα στοιχεία που εχει κανει parse με τα στοιχεία του αρχείου .txt για να δεί αν έχει αλλάξει κάτι στην σελίδα που έκανε parse.Αυτό το κάνω τραβώντας ουσιαστικά με χρηση της fopen κάθε γραμμης απο το αρχείο Takseis.txt και συγκρίνοντας την με όλες τις γραμμές που εγιναν parse.Πράγματι διαπιστώνει κανείς ότι αν για παράδειγμα η πρώτη γραμμή που τραβαει η fopen ειναι η "abcdefghijk" τότε με χρήση των 2 for loops προσπαθω να φερω και κάθε γραμμη των parse δεδομένων που τραβηξα ήδη , στη μορφή "abcdefghijk" με χρήση της τελείας ( $Final_Takseis_line = ΔΕΔΟΜΕΝΟ_1.ΔΕΔΟΜΕΝΟ_2.ΔΕΔΟΜΕΝΟ_3.Κ.Τ.Λ ). Τα δεδομένα πραγματι εμφανιζονται οπως τα θέλω δηλαδη ομοια ομως η πιο κατω if - else που εχω μου εμφανιζει συνεχως οτι οι δυο γραμμμες που τραβαω καθε φορα είναι διαφορετικές ακομα και αν ειναι ιδιες!!! ελπιζω να καταλαβετε διαβαζοντας και λίγο τον κωδικα γιατι ειναι λιγο μπερδεμα... > function writeData( $FilenameFor_Takseis , $Takseis_parsed , $kod , $per , $perigrafh_mathimatos , $eggr , $a_ekset , $b_ekset , $epit , $hm_A_ekset , $hm_B_ekset , $gkr , $simm){ // Writes parsed data into a text file $file = fopen( $FilenameFor_Takseis , 'w+'); if(!$file) { echo "file open problem"; } else { echo "file open is ok!"; } for ($row = 0;$row < sizeof($Takseis_parsed); $row++) { for ($col = 0; $col < 10; $col++) { fwrite($file, $Takseis_parsed[$row][$col]); } fwrite($file, $Takseis_parsed[$row][$col]."\r\n"); } fclose($file); } function readData($FilenameFor_Takseis , $Takseis_parsed , $kod , $per , $perigrafh_mathimatos , $eggr , $a_ekset , $b_ekset , $epit , $hm_A_ekset , $hm_B_ekset , $gkr , $simm){ // Reads data from a text file $file = fopen($FilenameFor_Takseis, 'r'); $array_read = array(); $row = 0; while (!feof($file)) { $line = fgets($file); echo "H line einaia:".$line."<br/>"; for ($row = 0;$row < sizeof($Takseis_parsed); $row++) { for ($col = 0; $col < 10; $col++) { $Takseis_line_kod = $Takseis_parsed[$row][0]; $Takseis_line_per = $Takseis_parsed[$row][1]; $Takseis_line_perigrafh_mathimatos = $Takseis_parsed[$row][2]; $Takseis_line_eggr = $Takseis_parsed[$row][3]; $Takseis_line_a_ekset = $Takseis_parsed[$row][4]; $Takseis_line_b_ekset = $Takseis_parsed[$row][5]; $Takseis_line_epit = $Takseis_parsed[$row][6]; $Takseis_line_hm_A_ekset = $Takseis_parsed[$row][7]; $Takseis_line_hm_B_ekset = $Takseis_parsed[$row][8]; $Takseis_line_gkr = $Takseis_parsed[$row][9]; $Takseis_line_simm = $Takseis_parsed[$row][10]; } $Final_Takseis_line = (string)$Takseis_line_kod.(string)$Takseis_line_per.(string)$Takseis_line_perigrafh_mathimatos.(string)$Takseis_line_eggr.$Takseis_line_a_ekset.(string)$Takseis_line_b_ekset.(string)$Takseis_line_epit.(string)$Takseis_line_hm_A_ekset.(string)$Takseis_line_hm_B_ekset.(string)$Takseis_line_gkr.(string)$Takseis_line_simm; echo "To Final ein:".$Final_Takseis_line."<br />"; if( $Final_Takseis_line != $line ) echo "Κατι αλλαξε στην σελίδα που εκανα parse!!!"; else echo "Δεν εχει αλλαξει τιποτα στην σελιδα που εκανα parse...."; } echo "<hr/>"; } fclose($file); }
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.