Αποστολέας Θέμα: Ηλεκτρονικό Πρωτόκολλο Σχολείου  (Αναγνώστηκε 36634 φορές)

Γεώργιος Θεοδώρου

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #135 στις: 20 Μαΐ 2020, 02:32:04 μμ »
Απλά για να γίνεται κουβέντα !!!

το Π (κεφαλαίο) χτυπάει
το π (μικρό) όχι

bugman

  • Επισκέπτης
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #136 στις: 20 Μαΐ 2020, 04:32:41 μμ »
έχεις θέμα με την κωδικοποίηση του αλφαριθμητικού. Τσέκαρέ το.
Φτιάξε ένα πρόγραμμα που θα παίρνει την ίδια εισαγωγή και θα την βάζει σε ένα απλό αρχείο κειμένου.
Μετά δοκίμασε μέσα από το notepad κατά το άνοιγμα να επιλέξεις κωδικοποίηση να δεις πώς το παίρνεις!



Γεώργιος Θεοδώρου

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #137 στις: 21 Μαΐ 2020, 07:13:04 πμ »
έχεις θέμα με την κωδικοποίηση του αλφαριθμητικού. Τσέκαρέ το.
Φτιάξε ένα πρόγραμμα που θα παίρνει την ίδια εισαγωγή και θα την βάζει σε ένα απλό αρχείο κειμένου.
Μετά δοκίμασε μέσα από το notepad κατά το άνοιγμα να επιλέξεις κωδικοποίηση να δεις πώς το παίρνεις!

Έχεις δίκιο bugman

το λάθος που βγάζει η php:

SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: 'Î-ΟΥ...' for column `protocol`.`attachments`.`name` at row 1 (SQL: insert into `attachments` (`protocol_id`, `ada`, `name`, `mimeType`, `savedPath`, `keep`, `expires`, `updated_at`, `created_at`) values (161, ?, ΔΕΛΤΙΟ ΤΥ�-ΟΥ ΟΡΓΑΝΙΚΩΝ ΚΕΝΩΝ 2019.2020_signed.pdf, application/pdf, arxeio/Φ.1.1//8-20200520_ΔΕΛΤΙΟ ΤΥ�-ΟΥ ΟΡΓΑΝΙΚΩΝ ΚΕΝΩΝ 2019.2020_signed.pdf, Κατά κρίση, ?, 2020-05-21 05:28:43, 2020-05-21 05:28:43))

Και χτυπάει μόνο το Π. Έκανα δοκιμή με όλο το ελληνικό αλφάβητο


Η λύση που προτείνω

στο αρχείο app/Http/Controllers/ProtocolController.php

1 (ΑΚΥΡΩΝΕΤΑΙ)

Αντικαταστήστε
το
$filename = $this->filter_filename($filename, false);
με
$filename = $this->filter_filename($filename, true);

στις γραμμές: 536, 708, 1366



2 (ΠΑΡΑΜΕΝΕΙ)

Αντικαταστήστε
το
$filenameToStore = request()->protocolnum . '-' . Carbon::createFromFormat('d/m/Y', request()->protocoldate)->format('Ymd') . '_' . $file->getClientOriginalName();
με
$filenameToStore = request()->protocolnum . '-' . Carbon::createFromFormat('d/m/Y', request()->protocoldate)->format('Ymd') . '_' . $filename;

στις γραμμές: 540, 712

ΠΡΟΣΤΙΘΕΤΑΙ
Σύμφωνα με τη συμβουλή του Άλκη

η γραμμή  1478 αλλάζει
από
~x',
σε
~ux',



Έτσι αξιοποιούμε πλήρως την function filter_filename (γραμμές 1469-1511).


Μετατρέπει βέβαια όλα τα γράμματα από κεφαλαία σε μικρά αλλά όπως μας λέει:

// lowercase for windows/unix interoperability http://support.microsoft.com/kb/100625



Θα ενημερώσω το github


Μεγάλο ευχαριστώ για το ενδιαφέρον και τη βοήθειά σας


Άλκη μόλις ανέβω Γιάννενα θα κεράσω με χαρά τσίπουρα...
« Τελευταία τροποποίηση: 21 Μαΐ 2020, 11:30:15 πμ από Γεώργιος Θεοδώρου »

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 5963
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #138 στις: 21 Μαΐ 2020, 10:32:42 πμ »
Γιώργο το πρόβλημα είναι σ' αυτήν τη γραμμή:
      ~x',

Άλλαξέ την σε:
      ~ux',

Αυτό ώστε η preg_replace να ενεργεί ανά UTF-8 χαρακτήρα και όχι ανά byte.
Συγκεκριμένα το Π σε UTF-8 αντιστοιχεί σε "cea0", οπότε το δεύτερο byte του κοβόταν λόγω της γραμμής 1475:
        [\x7F\xA0\xAD]|          # non-printing characters DEL, NO-BREAK SPACE, SOFT HYPHEN

Γεώργιος Θεοδώρου

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #139 στις: 21 Μαΐ 2020, 10:49:44 πμ »
Σε ευχαριστώ Άλκη

Την function  filter_filename δεν την έγραψα εγώ

Την υιοθέτησα από το διαδίκτυο.

Είμαι ανοιχτός σε κάθε πρόταση

alkisg

  • Τεχνικός / καθαρίστρια
  • *****
  • Μηνύματα: 5963
    • Ο Διερμηνευτής της ΓΛΩΣΣΑΣ
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #140 στις: 21 Μαΐ 2020, 10:51:04 πμ »
Γιώργο ενημέρωσα το παραπάνω μήνυμά μου με τη σωστότερη λύση. Απλά θέλει ένα "u" για να εφαρμοστεί unicode regex.

Γεώργιος Θεοδώρου

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #141 στις: 21 Μαΐ 2020, 11:31:31 πμ »
Με την πολύτιμη συνδρομή του Άλκη ενημερώθηκε η προηγούμενη λύση στη ενδεικνυόμενη.

 8) :angel:

bugman

  • Επισκέπτης
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #142 στις: 21 Μαΐ 2020, 12:37:36 μμ »
Και αυτό είναι ένα μάθημα για τη χρήση ξένων συναρτήσεων, ακόμα και βιβλιοθηκών.
Κοιτάμε μια περιγραφή και αγνοούμε δύο βασικά πράγματα. Ποιος την έγραψε, και την ανάγνωση του κώδικα (υποτίθεται είναι ανοικτού κώδικα)
Αυτό με το utf8 είναι πολύ συχνή πατάτα, γιατί στα αγγλικά οι χαρακτήρες σε υtf8 γράφονται με ίδια bytes με την Ansi έκδοση.
Παρόμοιο πρόβλημα υπήρχε με μια συνάρτηση που έγραφε στο πρόχειρο των Windows html κώδικα. Ο εμπνευστής της έστελνε Ansi κωδικοποίηση αντί του UTF8. Για αγγλικά έκανε! Προσοχή λοιπόν με τις κωδικοποιήσεις.

Γεώργιος Θεοδώρου

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #143 στις: 21 Μαΐ 2020, 06:02:24 μμ »
respect σε bugman kai alkisg

Γιάννης Γαϊδαρτζής

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 117
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #144 στις: 22 Μαΐ 2020, 08:38:21 πμ »
Μπράβο παιδιά! Συγχαρητήρια για το ομαδικό πνεύμα.
Πρώην ΚΕΠΛΗΝΕΤ

Χρήστος Στέρπης

  • Νέος
  • *
  • Μηνύματα: 1
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #145 στις: 22 Μαΐ 2020, 03:51:00 μμ »
Καλησπέρα σας,
από το νεότερο μέλος της παρέας σας! Είμαι δάσκαλος -ΠΕ70- δ/ντής σε δημοτικό σχολείο.
Αναζήτησα μια εφαρμογή ηλεκτρ. πρωτόκολλου, δωρεάν, μιας και η σχολική επιτροπή δεν πληρώνει τέτοιες "πολυτέλειες" κι εντυπωσιάστηκα από τη συγκεκριμένη. Προσπάθησα να την εγκαταστήσω, αλλά δεν μπορώ. Το λειτουργικό μου είναι windows 10. Κύριε Θεοδώρου, μήπως θα μπορούσατε να με βοηθήσετε;

Γεώργιος Θεοδώρου

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #146 στις: 22 Μαΐ 2020, 04:21:27 μμ »
Για μια γρήγορη δοκιμή κατεβάζεις το συμπιεσμένο αρχείο:

https://github.com/g-theodoroy/electronic_protocol/releases/download/win.0.1/electronic_protocol-win.zip

από: https://github.com/g-theodoroy/electronic_protocol/releases/tag/win.0.1

Αποσυμπιέζεις το zip και τρέχει ...


Δες και το βίντεο: https://youtu.be/e79OPKagz9A. Από το 1:10 και μετά.




Τώρα για κάτι πιο μόνιμο δες στο παρακάτω:

https://github.com/g-theodoroy/electronic_protocol

και ειδικότερα:

https://github.com/g-theodoroy/electronic_protocol#εναλλακτικές-λύσεις


Υπάρχουν αναλυτικές οδηγίες. Αν δυσκολευτείς ρίξε μια φωνή!

Γεώργιος Θεοδώρου

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #147 στις: 23 Μαΐ 2020, 01:49:27 μμ »
Βίντεο εγκατάστασης του Ηλ. Πρωτοκόλλου σε windows 10

https://youtu.be/xvDHwjHb7wc
« Τελευταία τροποποίηση: 23 Μαΐ 2020, 04:58:28 μμ από Γεώργιος Θεοδώρου »

kostas123

  • Νέος
  • *
  • Μηνύματα: 7
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #148 στις: 02 Ιουλ 2020, 02:50:43 μμ »
καλησπερα ευχαριστω παρα πολυ για το αππ ειναι καταπληκτικο
Ξερετε πως μπορουμε να αντιμετωπισουμε το θεμα με τα email
παντα το θεμα(του e-mail) δεν αναγνωριζετε στα ελληνικα  , Επισης υπαρχει δυνατοτητα αποστολης εξαρχομενου πρωτοκολλου μεσω email?

Γεώργιος Θεοδώρου

  • Δεινόσαυρος
  • *****
  • Μηνύματα: 143
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #149 στις: 02 Ιουλ 2020, 04:53:40 μμ »
Πάντα ...

προφανώς υπάρχει κάποιο θέμα κωδικοποίησης.


Συνάντησα το ίδιο "πρόβλημα" στην κωδικοποίηση του Αποστολέα


Πως είναι στημένο το πρωτοκολλο;
win + xampp, linux, κάτι άλλο;
Μήπως θα έπρεπε να ενημερωθεί το σύστημα (πχ νεότερο xampp και php)

Μπορείς να συσχετίσεις το πρόγραμμα email που χρησιμοποιεί ο αποστολέας με το πρόβλημα;
Δοκίμασε να στείλεις το ίδιο "προβληματικό email" με άλλο πρόγραμμα, πχ
outlook -> error ή ok
thunderbird -> error ή ok
gmail από φυλλομετρητή -> error ή ok

Μήπως το λειτουργικό σύστημα (win) δεν υποστηρίζει επαρκώς utf-8;
Μπορεί να ρυθμιστεί η χρήση utf-8 encoding στο σύστημα;

Τα σχολεία μας είναι γεμάτα από παλαιότερους υπολογιστές με παλαιότερο λογισμικό.

Η απάντηση στο ερώτημα είναι μάλλον δύσκολη (τουλάχιστον από μένα)

Έχει συναντήσει κανείς άλλος παρόμοιο πρόβλημα;



Τώρα για το 2ο ερώτημα

Η php μπορεί και στέλνει email

Αν υφίσταται η ανάγκη θα μπορούσε να γίνει μια σελίδα αποστολής email η οποία θα δίνει και Αριθμό Πρωτοκόλλου