SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

TYPO3 Kochbuch

TYPO3 Kochbuch zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 15.02.2017, 15:52:54
tsaenger
Guest
 
Beiträge: n/a
AES_Encrypt mit Hochkomma im Text

Hallo zusammen,

ich möchte gener mit AES_Encrypt daten in einer Mysql-DB verschlüsseln und habe dazu folgende Update-Befehlt erstellt:
Code:
UPDATE vergleich SET `name` = AES_ENCRYPT('$name', '$salt'), `vorname` = AES_ENCRYPT('$vorname', '$salt'), `migriert` = 1 WHERE `id` = $id
Nun bekomme ich aber ein Problme, wenn mein zu verschlüssender Name ein ' Hochkomma beinhaltet. Dann wird die Abfrage nicht ausgeführt.
Hat jemand von eine eine Idee wie ich das Lösen kann?

Mir fällt aktuell nur ein die Variable in Binär umzuwandeln und dann zu verschlüsseln.

Gruß und Danke

Tobias
Mit Zitat antworten
  #2  
Alt 16.02.2017, 10:07:03
sysop sysop ist offline
Junior Member
 
Registriert seit: Mar 2004
Ort: wien
Beiträge: 492
sysop befindet sich auf einem aufstrebenden Ast
AW: AES_Encrypt mit Hochkomma im Text

Ungeprüft übernimmt man ohnedies keine Variablebn, daher könnte escapen helfen.. http://php.net/manual/de/function.my...ape-string.php
bzw das passende Pendant
__________________
Gruss sys ;-)
Ich möchte wie mein Grossvater sterben, lächelnd und schlafend, nicht schreiend und weinend, wie sein Beifahrer.
Mit Zitat antworten
  #3  
Alt 16.02.2017, 10:12:25
tsaenger
Guest
 
Beiträge: n/a
AW: AES_Encrypt mit Hochkomma im Text

Guten morgen,

das habe ich auch schon versucht, aber leider klappt das nicht:
Code:
$new_name=mysql_real_escape_string($name);
UPDATE vergleich SET `name` = AES_ENCRYPT('$new_name', '$salt'), `vorname` = AES_ENCRYPT('$vorname', '$salt'), `migriert` = 1 WHERE `id` = $id
Wenn ich mir den Wert mittels echo von $new_name ausgeben lasse bekomme ich eine leere Ausgabe und nicht den Namen mit Escape
Was mache ich falsch?
Ich habe auch versucht die escape-funktion in das mysql-Statement einzufügen, das hatte aber auch nicht geklappt.

Zur genaueren Erläuterung:
Ich habe eine Datenbank in der Namen drin stehen die ohne escape gespeichert wurden. Diese Namen möchte ich mir nun auslesen und mittels AES_encrypt verschlüsselt ablegen.

Dazu öffne ich zuerst die DB:
Code:
$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
}
echo "Connected successfully <br><br><br>";
dann lese ich die DB aus:
Code:
$sql = sprintf("SELECT id, name, vorname, migriert FROM vergleich",mysql_real_escape_string($name));
$result = $conn->query($sql);
if ($result->num_rows > 0) {
    while($row = $result->fetch_assoc()) {
       $name=$row["name"];
und anschließend will ich Sie wieder verschlüsselt ablegen:
Code:
$new_name=mysql_real_escape_string($name);
$result1 = $conn->query("UPDATE vergleich SET `name` = AES_ENCRYPT('$new_name', '$salt') WHERE `id` = $id and `migriert`=0");

Gruß und Danke für die Hilfe
Tobias
Mit Zitat antworten
  #4  
Alt 20.02.2017, 10:10:16
sysop sysop ist offline
Junior Member
 
Registriert seit: Mar 2004
Ort: wien
Beiträge: 492
sysop befindet sich auf einem aufstrebenden Ast
AW: AES_Encrypt mit Hochkomma im Text

Das ist nicht so einfach, ohne Link muss ich einfach raten.

Wenn ein echo nicht klappt und eine leere Anzeige produziert, tippe ich auf ein Sonderzeichen, das fälschlicher Weise vom Code interpretiert wird.
Derartiges umgeht man mit http://php.net/manual/de/function.ht...ity-decode.php und achtet auf Escaping, wenn man die Werte in Datenbanken und/oder Files ablegen möchte.

Eigentlich ist das kein Hexenwerk, wenn man sich an die Regeln hält.
__________________
Gruss sys ;-)
Ich möchte wie mein Grossvater sterben, lächelnd und schlafend, nicht schreiend und weinend, wie sein Beifahrer.
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Dynamische Seitennavigation Alger PHP Grundlagen 14 17.02.2012 20:52:30
Newsflash mit marquee Michael17 HTML, CSS und JavaScript Help! 2 04.03.2009 19:51:21
Mailtext erzeugt Fehler juergen PHP Grundlagen 4 04.07.2007 19:59:07
Bilder umfleißen lassen MatMel HTML, CSS und JavaScript Help! 4 13.05.2007 03:51:20
Problem mit Zeilenumbruch... DeMaephis PHP für Fortgeschrittene und Experten 6 06.06.2002 21:06:47


Alle Zeitangaben in WEZ +2. Es ist jetzt 15:28:09 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.


© 2001-2017 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt