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

igaid

  • ΚΕΠΛΗΝΕΤ
  • *
  • Μηνύματα: 97
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #15 στις: 23 Μάι 2018, 11:56:04 πμ »
Καλημέρα Συνάδελφε,

Εγκατέστησα την εφαρμογή σε ubuntu server 18.04 και μετά την δοκιμή μου εμφάνισε τα παρακάτω. Το μόνο που άλλαξα είναι τα ports του apache (8081, 444).
Στην εγκατάσταση μου έβγαλε κάποια μηνύματα(βλέπε συνημμένο).

 

*/ /* |-------------------------------------------------------------------------- | Register The Auto Loader |-------------------------------------------------------------------------- | | Composer provides a convenient, automatically generated class loader for | our application. We just need to utilize it! We'll simply require it | into the script here so that we don't have to worry about manual | loading any of our classes later on. It feels nice to relax. | */ require __DIR__.'/../bootstrap/autoload.php'; /* |-------------------------------------------------------------------------- | Turn On The Lights |-------------------------------------------------------------------------- | | We need to illuminate PHP development, so let us turn on the lights. | This bootstraps the framework and gets it ready for use, then it | will load up this application so that we can run it and send | the responses back to the browser and delight our users. | */ $app = require_once __DIR__.'/../bootstrap/app.php'; /* |-------------------------------------------------------------------------- | Run The Application |-------------------------------------------------------------------------- | | Once we have the application, we can handle the incoming request | through the kernel, and send the associated response back to | the client's browser allowing them to enjoy the creative | and wonderful application we have prepared for them. | */ $kernel = $app->make(Illuminate\Contracts\Http\Kernel::class); $response = $kernel->handle( $request = Illuminate\Http\Request::capture() ); $response->send(); $kernel->terminate($request, $response);
ΠΕ19 ΚΕ.ΠΛΗ.ΝΕ.Τ. Ρεθύμνου
ubuntu 12.04

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

  • Θαμώνας
  • ***
  • Μηνύματα: 30
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #16 στις: 24 Μάι 2018, 10:05:33 πμ »
Στις πρόσφατες διανομές άλλαξε ο εξ ορισμού τρόπος σύνδεσης στη mysql - mariadb

Υπάρχουν δύο εναλλακτικές λύσεις:

--------------------------------------------------------------------------------------------------

Να φτιαχτεί ένας χρήστης πχ protocoluser και να του δοθούν όλα τα δικαιώματα στην βάση δεδομένων protocoldb
Αν γίνει αυτό πρέπει να αλλάξουμε αντίστοιχα τα στοιχεία στο Ηλ. Πρ.

στο αρχείο .env
DB_USERNAME=root protocoluser
DB_PASSWORD=p@ssw@rd νεο pass

config/database.php
'database' => env('DB_DATABASE', 'd@t@b@seprotocoldb'),
'username' => env('DB_USERNAME', 'rootprotocoluser'),
'password' => env('DB_PASSWORD', 'p@ssw@rdνεο pass'),

------------------------------------------------------------------------------------------------

H άλλη λύση που συνήθως υλοποιώ (μέχρι τώρα) είναι να ρυθμιστεί η  mysql να δέχεται είσοδο από το χρήστη root

# sudo mysql -u root

>USE mysql;
>UPDATE user SET plugin='mysql_native_password' WHERE User='root';
>FLUSH PRIVILEGES;
>exit;

-----------------------------------------------------------------------------------------------------------

Το script για εγκατάσταση σε ubuntu ενημερώθηκε

Ευχαριστώ πολύ
Στη διάθεσή σας



« Τελευταία τροποποίηση: 28 Μάι 2018, 10:42:26 μμ από Γεώργιος Θεοδώρου »

igaid

  • ΚΕΠΛΗΝΕΤ
  • *
  • Μηνύματα: 97
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #17 στις: 28 Μάι 2018, 10:17:11 πμ »
Ευχαριστώ για τη γρήγορη ανταπόκριση. Με το νέο script λειτουργεί κανονικά.
ΠΕ19 ΚΕ.ΠΛΗ.ΝΕ.Τ. Ρεθύμνου
ubuntu 12.04

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

  • Θαμώνας
  • ***
  • Μηνύματα: 30
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #18 στις: 30 Μάι 2018, 11:56:52 μμ »
Δείτε ένα βίντεο για τη χρήση του Ηλεκτρονικού Πρωτοκόλλου

https://youtu.be/Xl6qhbJWTGs




« Τελευταία τροποποίηση: 01 Ιούν 2018, 01:54:48 μμ από Γεώργιος Θεοδώρου »

Δημήτρης Κανάς

  • Εκπαιδευτικός
  • Δεινόσαυρος
  • *****
  • Μηνύματα: 166
    • Εργαστήρι Δημοτικού Σχολείου
Απ: Κώδικας στο Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #19 στις: 20 Ιούλ 2018, 02:03:34 μμ »
Γιώργο για να προσθέσω μια απλή σελίδα στο home θα πρέπει (όπως home/list)...

-------------------------
web.php (routes)

Route::get('/home/neaselida','neocontroller@neafunction')->name('neaselida');

-----------------------
Http\Controllers και neocontroller

class neocontroller extends Controller
{
    public function neafunction()
   {
      return view('neaselida');
    }
}

με ονομασία neaselida.blade.php στο φάκελο views..

Γιατί εμένα μου εμφανίζει πάντα...

Sorry, the page you are looking for could not be found.

NotFoundHttpException in Handler.php line 113
ModelNotFoundException in Builder.php line 314

Βέβαια όποιος άλλος μπορεί... ας βοηθήσει...

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

  • Θαμώνας
  • ***
  • Μηνύματα: 30
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #20 στις: 20 Ιούλ 2018, 04:21:46 μμ »
Αγαπητέ Δημήτρη

Το ηλεκτρονικό πρωτόκολλο φτιάχτηκε με το framework laravel

https://laravel.com/docs/5.6


Υπάρχει αρκετή τεκμηρίωση (θέλει όμως λίγο διάβασμα!)


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

Route::get('/home/neaselida', function () {
    return 'Hello World home - neaselida';
});


ή

Route::get('/neaselida', function () {
    return 'Hello World neaselida';
});



Θα τυπώσουν αντίστοιχα:

Hello World home - neaselidα
Hello World neaselida




Για καλύτερη οργάνωση η function() μπορεί να περιέχεται σε ένα Controller.

Το Ηλ Πρωτόκολλο έχει τους ακόλουθους Controllers:

Auth\LoginController
Auth\RegisterController
Auth\ForgotPasswordController
Auth\ResetPasswordController

και

UserController
KeepvalueController
ProtocolController
ConfigController






Αν θέλεις να έχεις μια νέα σελίδα φτιάξε σε ένα υπάρχοντα controller πχ Protocolcontroller μια νέα function πχ

public function neaselida(){
     return 'Hello World home - neaselida from ProtocolController';
}



Η route που θα οδηγεί σε αυτή θα πάρει τη μορφή:

Route::get('/neaselida','ProtocolController@neaselida');
ή αν θέλεις
Route::get('/home/neaselida','ProtocolController@neaselida');

στο web.php




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

Στη γραμμή 74 του ProtocolController προσθέτεις στον πίνακα except τη neaselida για πρόσβαση από όλους (Middleware)

$this->middleware('writer:home/list', ['except' => ['index', 'indexList', 'getFileInputs', 'gotonum', 'download', 'find', 'getFindData', 'printprotocols', 'printed', 'about',  'neaselida']]);



Τελικά το περιεχόμενο της σελίδας θα πρέπει να διαμορφωθεί:

παίρνοντας δεδομένα από τη ΒΔ με το εργαλείο Eloquent
παρουσιάζοντάς τα με το εργαλείο blade



θέλει (λίγο?) διάβασμα!

Τις καλησπέρες μου
Γεώργιος Θεοδώρου

Δημήτρης Κανάς

  • Εκπαιδευτικός
  • Δεινόσαυρος
  • *****
  • Μηνύματα: 166
    • Εργαστήρι Δημοτικού Σχολείου
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #21 στις: 20 Ιούλ 2018, 06:12:33 μμ »
Γεια σου Γιώργο. Σ` ευχαριστώ για την άμεση απάντηση. Εδώ και λίγες ημέρες μελετάω το framework laravel και μου κάνει εντύπωση που δεν μπορώ να εφαρμόσω κάτι τόσο απλό στο πρωτόκολλο.

1. Δημιουργία mylist.blabe.php στο views με π.χ.

Κώδικας: [Επιλογή]
@extends('layouts.app')

@section('content')

<h2>Welcome To Laravel</h2>

@endsection

2. web.php στο rootes

Κώδικας: [Επιλογή]
Route::get('/home/mylist','ProtocolController@mylist');
3.ProtocolController.php

Κώδικας: [Επιλογή]
public function mylist(){

        return view('mylist');

    }

και

Κώδικας: [Επιλογή]
$this->middleware('writer:home/list', ['except' => ['index', 'indexList', 'getFileInputs', 'gotonum', 'download', 'find', 'getFindData', 'printprotocols', 'printed', 'about', 'mylist']]);
κι όμως...

http://localhost/e-protocol/home/mylist

Sorry, the page you are looking for could not be found.

Έκανα και php artisan route:clear αλλά το ίδιο...

Τι ξέχασα να κάνω;

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

  • Θαμώνας
  • ***
  • Μηνύματα: 30
    • Διαχείριση απουσιών
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #22 στις: 20 Ιούλ 2018, 09:56:02 μμ »
Στο web.php

βάλε τη route

Route::get('/home/mylist','ProtocolController@mylist');

στη γραμμή 59 πριν από το

Route::get('/home/{protocol}','ProtocolController@index');


Ο μηχανισμός routing εκτελεί την πρώτη route που θα ταιριάξει ... ξεκινώντας από πάνω προς τα κάτω.

Αν η /home/list ή /home/mylist μπούν μετά από το /home/{protocol}

τότε εκτελείται η /home/{protocol} και ψάχνει να βρεί πρωτόκολλο με κωδικό mylist (που όντως δεν υπάρχει !!!)


Φίλε Δημήτρη τα χαζοκούτια δεν καταλαβαίνουν ... και πολλά !!!


Με εκτίμηση ...



Δημήτρης Κανάς

  • Εκπαιδευτικός
  • Δεινόσαυρος
  • *****
  • Μηνύματα: 166
    • Εργαστήρι Δημοτικού Σχολείου
Απ: Ηλεκτρονικό Πρωτόκολλο Σχολείου
« Απάντηση #23 στις: 20 Ιούλ 2018, 10:58:00 μμ »
Γιώργο θα μας  :D τα χαζοκούτια... αν και λογικό δεν πήγε το μυαλό μου... και είχα πραγματικά  :D γιατί το σωστό δε μπορούσε να δουλέψει...

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

Laravel... νομίζω πως είναι ότι καλύτερο κυκλοφορεί και άργησα αρκετά να το ανακαλύψω...

Καλό βράδυ!