Προς το περιεχόμενο

Oδηγίες για PHP script


weather1967

Προτεινόμενες αναρτήσεις

Δημοσ.

Καλησπέρα σέ όλους.

Ειμαι νεο μελος,και εχω ενα μετεωρολογικο σταθμο και ανεβαζω δεδομενα στο νετ,και αν γνωρίζει καποιος χρειάζομαι τά φωτα του.

 

Θελω αν μπορεί κάποιος έμπειρος,να με βοηθήση πανω σέ ενα php script σαν αυτο.

 

http://hellas.myftp.org/peristeri.php

 

Και τα μετεωρολογικα δεδομενα που βγαινουν κατα αυτήν τήν φόρμα

 

http://users.otenet.gr/~meteo/zwntana.txt

 

Και εδώ ειναι οι min-max τιμες

 

http://users.otenet.gr/~meteo/minmaxoutput.txt

 

Να μπουν μεσα στο πρωτο script

 

Δεν ξερω αν καταλαβατε τι χρειαζομαι ,αν οχι εδω ειμαι να δωσω περισσοτερες διευκρινισεις.

 

ΥΓ: Επειδή ειμαι τελείως άσχετος με php ,θα ημουν ευγνώμων αν το εφτιαχνε καποιος συναδελφος αυτο το php script ,για να το ανεβασω στον server μου

 

Ευχαριστώ

  • Απαντ. 32
  • Δημ.
  • Τελ. απάντηση
Δημοσ.

Διαβάζεις το εκάστοτε αρχείο :

>$myFile = "testFile.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, filesize($myFile));
fclose($fh);

 

Μετά κάνεις μια "έκρηξη" στα δεδομένα που έχεις διαβάσει :

>$pieces = explode("--", $theData);

 

Description

array explode ( string $delimiter ' date=' string $string [, int $limit '] )

 

Returns an array of strings, each of which is a substring of string formed by splitting it on boundaries formed by the string delimiter .

 

 

Και μετά σε κάθε κελί θα βάζεις την αντίστοιχη τιμή :

>echo $pieces[x];

 

Όπου x ένας αριθμός από το 0 μέχρι όσο πάει.

Δημοσ.

Πρ'ωτα από όλα σέ ευχαριστώ για την τοσο σύντομη απάντηση.

Αυτά τα δεδομενα αλλάζουν αυτοματα καθε 5 min πού κανει ανανεωση ο μετεωρολογικος σταθμος

 

http://users.otenet.gr/~meteo/zwntana.txt

 

http://users.otenet.gr/~meteo/minmaxoutput.txt

 

Αν ηθελες και οταν .... εχεις καποιο ελεύθερο χρόνο ,θα μπορούσες να φτιαξεις τον κώδικα,γιατι απλα δεν το κατεχω καθολου το PHP άθλημα ,και απλά να το ανεβαζα στον server μου ?

Ξέρω οτι ζητάω πολλά ,αν γινεται ... αν οχι το καταλαβαινω και κανενα προβλημα.

 

 

 

Διαβάζεις το εκάστοτε αρχείο :

>$myFile = "testFile.txt";
$fh = fopen($myFile, 'r');
$theData = fread($fh, filesize($myFile));
fclose($fh);

 

Μετά κάνεις μια "έκρηξη" στα δεδομένα που έχεις διαβάσει :

>$pieces = explode("--", $theData);

 

 

 

 

Και μετά σε κάθε κελί θα βάζεις την αντίστοιχη τιμή :

>echo $pieces[x];

 

Όπου x ένας αριθμός από το 0 μέχρι όσο πάει.

Δημοσ.
Ελπίζω να κάνεις την δουλειά σου.

 

Πρώτα απο ολα θελω να σου ενα μεγαλο ευχαριστώ,για τον κοπο σου ,αν και δεν γνωριζομαστε .

 

Το ανεβασα ,αλλα παρατηρω μερικα λαθη στις γραμμες ,που απο οτι καταλαβαινω μπορεις να τα διορθωσεις ευκολα

 

http://meteo.comlu.com/contition.php

 

1)Μπορεις να κοψεις το δευτερο δεκαδικο αριθμο απο την βαρομετρικη πιεση ? και απο την βροχοπτωση ? να εχουν δηλαδη ενα δεκαδικο ,ασχετο αν εγω το ανεβαζω με τα txt και με δευτερο δεκαδικο

2) Tα min - max δεδομενα ειναι λαθος ως προς την σωστη σειρα δηλαδη στο πρωτο κελλι ειναι η high temperature ,και πολλα αλλα δεδομενα στην συνεχεια.

 

Σου παραθετω πως πρεπει να ειναι η σωστη σειρα στον κατω πινακα απο αυτον τον πινακα που ομως υπολειτουργει και θελω να τον ανεβασω σε δικο μου server

 

http://www.metar.gr/en/peristeri.php

 

YΓ : Το ευχαριστω ειναι το λιγοτερο φιλε μου ,αν και δεν σε ξερω ,μακαρι να μπορουσα και εγω καποια στιγμη να φανω χρησιμος καπου.

Δημοσ.

Για να εμφανίσεις όποια τιμή θέλεις με 1 δεκαδικό ψηφίο αντικατέστησε το :

>echo $pieces[χ];

με

>echo sprintf("%.1f", $pieces[χ]);

όπου x είναι ο εκάστοτε αριθμός.

 

Τώρα όσον αφορά την σειρά μπορείς πολύ απλά να την αλλάξεις, αλλάζοντας τους αριθμούς μέσα στο $pieces[x].

Δημοσ.
Για να εμφανίσεις όποια τιμή θέλεις με 1 δεκαδικό ψηφίο αντικατέστησε το :

>echo $pieces[χ];

με

>echo sprintf("%.1f", $pieces[χ]);

όπου x είναι ο εκάστοτε αριθμός.

 

Τώρα όσον αφορά την σειρά μπορείς πολύ απλά να την αλλάξεις, αλλάζοντας τους αριθμούς μέσα στο $pieces[x].

 

Ωραια πιστευω να τα καταφερω τωρα ,αλλα εδω υπαρχει ενα προβλημα με τα δεκαδικα ,εβαλα αυτο που μου ειπες για να κοψω μερικα δεκαδικα.

 

<td align="center"><?php echo $pieces[0]; ?></td>

<td align="center"><?php echo $pieces[1]; ?></td>

<td align="center"><?php echo $pieces[2]; ?> °C</td>

 

<td align="center"><?php echo $pieces[3]; ?> %</td>

<td align="center"><?php echo sprintf("%.1f",$pieces[4]; ?> hpa</td>

<td align="center"><?php echo $pieces[5]; ?> km/h</td>

<td align="center"><?php echo $pieces[6]; ?></td>

<td align="center"><?php echo sprintf("%.1f",$pieces[7]; ?> mm</td>

<td align="center"><?php echo sprintf("%.1f",$pieces[8]; ?> mm</td>

<td align="center"><?php echo sprintf("%.1f",$pieces[9]; ?> mm</td>

 

 

Αλλα μου λεει error οταν το ανεβαζω ,γιατι ?

Δημοσ.

><td align="center"><?php echo sprintf("%.1f",$pieces[4]; ?> hpa</td>

 

Σου λείπει μια παρένθεση μετά το [x] και πριν το ;

 

><td align="center"><?php echo sprintf("%.1f",$pieces[4]); ?> hpa</td>

 

Σε όλα όχι μόνο στο 4.

Δημοσ.
><td align="center"><?php echo sprintf("%.1f",$pieces[4]; ?> hpa</td>

 

Σου λείπει μια παρένθεση μετά το [x] και πριν το ;

 

><td align="center"><?php echo sprintf("%.1f",$pieces[4]); ?> hpa</td>

 

Σε όλα όχι μόνο στο 4.

 

Εχεις απολυτο δικιο ,το εφτιαξα τελικά οπως ηθελα,και παλι ευχαριστω για ολα.

Μηπως μπορεις το τελευταιο κουτακη που λεει contitions πως μπορω να το αφαιρεσω ?

Γιατι δεν θα λειτουργει

 

http://meteo.comlu.com/contition.php

Δημοσ.

Σβήσε τα :

><td align="center">Conditions:</td>

και :

><td align="center"><a href="http://hellas.myftp.org/" title="Powered By Hellas Weather Stations" target="_blank"><img border="0" src="http://users.otenet.gr/~epigeo/sinthikes/attica_peristeri.gif" width="80" height="50"></a></td>

Δημοσ.
Σβήσε τα :

><td align="center">Conditions:</td>

και :

><td align="center"><a href="http://hellas.myftp.org/" title="Powered By Hellas Weather Stations" target="_blank"><img border="0" src="http://users.otenet.gr/~epigeo/sinthikes/attica_peristeri.gif" width="80" height="50"></a></td>

 

Σωστος και παλι το εκανα και αυτο.

Ενα τελευταιο θελω να σε ρωτησω αν γινετε βεβαια ,μηπως εκει που λεει τον ανεμο στο πανω κουτακη π.χ N ο βορρας S ο νοτος κ.οκ ,μηπως μπορεις να εβαζες ενα βελακη ,που οταν ελεγε το text Ν να κοιταζε το βελακη προς τα πανω κ.ο.κ ,αν δεν γινετε και ειναι πολυ δυσκολο ,αστο μια χαρα ειμαστε μεχρι εδω ,μην τα παραθελουμε κιολας χα χα !!

Και παλι φιλε μου αν και δεν γνωριζω το ονομα σου ,χιλια ευχαριστω για την πολυτιμη βοηθεια σου.

 

---------- Το μήνυμα προστέθηκε στις 00:12 ----------

 

Και ενα αλλο που το ειδα μολις τωρα,ποιος ειναι ο κωδικας,για να κοψω τελειως τα δεκαδικα ? γιατι στην κατω σειρα βγαζει δεκαδικο στην min-max υγρασία.

Δημοσ.

Με το ακόλουθο κόβεις τα δεκαδικά.

>echo sprintf("%d", $pieces[x]);

 

Για αυτό με το βελάκι που λες δεν είναι τίποτα δύσκολο αλλά θα πρέπει να έχεις όσες εικόνες είναι και οι καταστάσεις σου. Εφόσον τις γνωρίζεις όλες (N,S,NW,NE...) θα δώσεις σε κάθε εικόνα το αντίστοιχο όνομα (N.png για παράδειγμα). Έπειτα θα τις εμφανίζεις ακολούθως :

><img src="<?php echo $pieces[x]; ?>" alt=<?php echo $pieces[x]; ?>" />

 

Εαν αποφασίσεις να τις βάλεις σε κάποιον φάκελο, για παράδειγμα images, τότε απλά θα προσθέσεις το όνομα του φακέλου στο "src" :

><img src="images/<?php echo $pieces[x]; ?>" alt=<?php echo $pieces[x]; ?>" />

Δημοσ.

Καλημερα

Και παλι ευχαριστω,εφτιαξα το πρωτο σκελος με τα δεκαδικα,τωρα για το βελακη,επειδη το βλεπω δυσκολο να κανω τα παρακατω ,δεν πειραζει ,το αφηνω ετσι οπως ειναι.

Μενω υποχρεωμενος φιλε μου τι να πω ,η βοηθεια σου ηταν πολυτιμη για μενα .

Χιλια ευχαριστω!!!!.

 

 

Με το ακόλουθο κόβεις τα δεκαδικά.

>echo sprintf("%d", $pieces[x]);

 

Για αυτό με το βελάκι που λες δεν είναι τίποτα δύσκολο αλλά θα πρέπει να έχεις όσες εικόνες είναι και οι καταστάσεις σου. Εφόσον τις γνωρίζεις όλες (N,S,NW,NE...) θα δώσεις σε κάθε εικόνα το αντίστοιχο όνομα (N.png για παράδειγμα). Έπειτα θα τις εμφανίζεις ακολούθως :

><img src="<?php echo $pieces[x]; ?>" alt=<?php echo $pieces[x]; ?>" />

 

Εαν αποφασίσεις να τις βάλεις σε κάποιον φάκελο, για παράδειγμα images, τότε απλά θα προσθέσεις το όνομα του φακέλου στο "src" :

><img src="images/<?php echo $pieces[x]; ?>" alt=<?php echo $pieces[x]; ?>" />

 

---------- Το μήνυμα προστέθηκε στις 15:41 ----------

 

Τελικά ηταν πολυ απλο ,ειχες δικιο το καταφερα ευκολα σχετικά,απλα εδωσα μια ονομασια N-NE κ.τ.λ στα βελακια και εβαλα το script που μου ειπες ,αν θελω να κανω το ιδιο με τις καιρικες συνθηκες θα κανω ακριβως τα ιδια στο πεδιο ομως τον καιρικων συνθηκων ετσι ?

 

http://meteo.comlu.com/contition.php

Δημοσ.

Ναι θα κάνεις το ίδιο.

 

Μια διόρθωση όμως. Το :

><img src="images/<?php echo $pieces[x]; ?>" alt=<?php echo $pieces[x]; ?>" />

να το αντικαταστήσεις με το :

><img src="images/<?php echo $pieces[x]; ?>" alt="<?php echo $pieces[x]; ?>" />

 

Κατα λάθος είχα ξεχάσει ένα "αυτάκι" μετά το alt=

 

Επίσης από ότι είδα οι εικόνες σου δεν έχουν κατάληξη. Πρόσθεσε την κατάληξή τους (*.png, *.jpg, *.gif, ότι τις έχεις κάνει) αλλάζοντας το παραπάνω σε αυτό :

><img src="images/<?php echo $pieces[x]; ?>.png" alt=<?php echo $pieces[x]; ?>" />

άμα οι εικόνες σου είναι *.png, ή σε οποιαδήποτε άλλη κατάληξη.

Αρχειοθετημένο

Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.

  • Δημιουργία νέου...