2017-08-21 3 views
0

Ich habe einige PHP-Code wie folgende Zeilen des Codes, wenn Sie auf das Bild klicken, es geht zu verschiedenen Abteilungen.Wie zu verschlüsseln Variablen

Departments.php?DepartmentsID=6?&CampusID=1 

die in URL angezeigt wird, wenn Sie darauf klicken.

Wie kann ich es leicht zu erfassen, so dass es nicht in URL angezeigt wird, ist der Fall mit dem Herunterladen einer Datei.

Wie kann ich den Code deaktivieren oder eingeben, so dass ich nicht in URL angezeigt wurde.

dank


Zugriffe auf Variablen ausblenden möchten, dass

+2

Sie es als POST – chris85

+2

auf $ _POST Lesen up schicken könnte. Das ist, was Sie suchen – Andreas

+1

Wenn Sie nicht möchten, dass es in Ihrer URL, müssen Sie bestimmte Bedenken haben. Was ist es? Möchten Sie Ihre URLs vor einem Administrator schützen, der in Ihre Webserverprotokolle Einsicht nehmen kann? Möchten Sie verhindern, dass Benutzer die Werte ändern und eine andere Entität erreichen? Bitte bearbeiten Sie Ihre Frage und klären Sie die Wurzel dieser Anfrage. –

Antwort

1

so weit durch HTML-Link, wie vorbei, wie ich verstehe Sie wollen wie der Dateiname eine Art von Token als Bindeglied und nicht lesbar etwas passieren oder eine ID an Ihre Website, um die Anfrage zu bearbeiten. (Der Anwender sieht nur Token und nichts anderes)

so auf einen Link zu klicken, erhalten Sie so etwas wie Departments.php?action=907fgash6f8906a6asf6g...

Wenn Sie so etwas wie, dass Sie irgendeine Art von Datenbank benötigen würde Ihre Token zu speichern, damit Ihr Code weiß, was auf einem bestimmten Token zu tun.

Oder Sie könnten tatsächlich encryption verwenden, die Sie entschlüsseln müssten und natürlich Ihren Schlüssel versteckt und sicher aufbewahren.

Ich verstehe nicht, warum Sie all dies tun müssen. Wenn Sie mehr darüber erfahren können, warum Sie dies tun möchten, gibt es möglicherweise eine bessere Lösung.

0

Ändern Sie in Ihrem PHP-Formular die Methode method = "POST".

+0

diese Links werden erstellt, wenn ich mysql qurey ausführen und es die Menüelemente Links z. departmentID = 1,2,3, wie kann ich sie zu method = "POST" – user3355035

0

Sie verwenden den URI als GET-Parameter, an dem Sie solche Komplikationen erhalten. Sie können einem weiteren MVC verwandte Methode wählen, um diesen Ansatz:

www.example.com/6/1 

Das obige Beispiel stellt die Abteilungs-ID als 6 und die Campus-ID als 1 mit einem Router. Ich schlage vor, AltoRouter zu verwenden.

$router = new AltoRouter(); 
$router->map('GET|POST', '/[i:d]/[i:c]', function($department, $campus) { 
    echo "Department $department on Campus $campus."; 
    // Add your code logic 
}, 'Name of route'); 
$router_match = $router->match(); 
if($router_match && is_callable($router_match['target'])) { 
    call_user_func_array($router_match['target'], $router_match['params']); 
    exit(); 
} 
// Some 404 stuff. 

Dies kann für mutli-Mapping verwendet werden, das heißt, Sie den Download-Link zum Beispiel, was auch immer Sie mögen, ändern kann nur eindeutige Datei-IDs, dass der Benutzer Ende wissen muss, darauf zuzugreifen und obendrein, könnte es vor dem Download eine RBAC-Datei sein, damit nur X-Benutzer bestimmte Themen herunterladen/anzeigen können.

0

Dies wiederholt sich einige der Informationen von anderen beantwortet:

  1. Verwendung POST, diese entfernt nur die Möglichkeit, die Daten in Abfrage URL zu lesen, aber immer noch im Klartext ist.

  2. SSL Stellen Sie sicher, für Transportverschlüsselung

  3. Verschlüsselung verwenden bei der Nachrichtenschicht aktiviert ist, kann der eigentliche Text selbst verschlüsselt werden, wenn Sie so

  4. Zusätzliche Anmerkung wünschen, wenn die Daten diese empfindlich ist und Wird in REST in einem DB gespeichert, möchten Sie es vielleicht auch dort verschlüsseln.

Grundsätzlich „Verteidigung in der Tiefe“ ist der Ansatz, gibt es nie einen Königsweg

+0

Ja Ich möchte die Daten, die als Variablen über HTML Link übergeben. als ur kann es leicht ändern in html-link und können dateien herunterladen usw. oder ändern – user3355035

+0

wie kann ich folgende verbindung zu verschlüsseln oder zu verbergen, zb Courses Detail user3355035

Verwandte Themen