Der Thread ist fast 10 Jahre alt... :roll:
Beiträge von danielgoehr
-
-
Hi Robbi,
ich hab deinen Code mal ein bisschen überarbeitet. So sollte es funktionieren:
Code
Alles anzeigen$infos = array ( ) ; $file_name = "mitglieder1.csv" ; if ( ( $handle = fopen ( $file_name , "r" ) ) !== FALSE ) { while ( ( $data = fgetcsv ( $handle , 0 , "," ) ) !== FALSE ) { // data[] steht hier für die einzelnen Spalten der CSV, beginnend bei 0. // Hier kannst du entscheiden, welche Spalte verschlüsselt werden soll // z.B. erste Spalte: // $data[0] = md5($data[0]); // oder z.B. zweite Spalte: // $data[1] = md5($data[1]); // usw. $data[0] = md5($data[0]); // Die folgende Zeile gehört zu einer zweispaltigen CSV-Datei. // $infos [ ] = $data [ 0 ] . ' ,' . $data [ 1 ] ; // Du schreibst ja, es gibt jetzt nur noch eine Spalte, deshalb muss die Zeile entsprechend angepasst werden: $infos [ ] = $data [ 0 ]; } fclose ( $handle ) ; } $fp = fopen ( 'mitglieder2.csv' , 'w' ) ; foreach ( $infos as $info ) { fputcsv ( $fp , array ( $info ) , ',' , ' ' ) ; } fclose ( $fp ) ; echo 'fertig';Ich habe mal ein paar Kommentare ergänzt. Vielleicht wird es so etwas klarer :)
Edit: Tippfehler
-
Jetzt habe ich doch mal schnell über den ganzen Code drübergeschaut. Oben machst du ja eine Ausgabe mit echo. Das ist eigentlich überflüssig (das ist eine Ausgabe im Browser).
Dann schreibst du die Daten in ein Array und schreibst das Array in die neue Datei. $user_pass ist ja ganz nicht definiert. Daher "weiß" PHP auch nicht, was du da überhaupt verschlüsseln möchtest. Das Array $data enthält die einzelnen Spalten. Eine davon ist vermutlich das Passwort, dass du verschlüsseln möchtest.
Ohne die Struktur der CSV zu kennen, ist es aber schwer zu sagen, welche Spalte wohl die richtige ist.
-
string md5 ( string $user_pass [, bool $raw_output = false ] )
.Steht die da exakt so in deinem Code?
Die eckige Klammer darf im "echten" Code so natürlich nicht stehen. Das ist ein optionaler Parameter, der entweder true oder false lauten muss (false ist Default).Das heißt, der korrekte Aufruf ist eigentlich nur:
$user_pass = md5($user_pass);Den Rest habe ich mir jetzt nicht genauer angeschaut, weil gerade nur mobil unterwegs.
-
Sorry, der zweite Link ist falsch.
Es sollte eigentlich der hier sein:
http://php.net/manual/de/function.md5.php -
Nein, Hauptgrund war das die englische Site die Hauptseite wird, myDumper wäre eine Draufgabe gewesen. Aber die Subdomain hat wie ich im anderen Thread geschrieben habe, nicht funktioniert. Das tut sie erst jetzt.
Aber ich frage mich ob ich MyDumper überhaupt brauche? Ich lese überall das mit PHP7 MyDumper gar nicht mehr notwendig ist.Ok, dann hatte ich das gerade falsch verstanden.
Ob du den mysqldumper brauchst, hängt davon ab, wie du deine Backups machst. Mit PHP7 hat das ja erstmal nichts zu tun.
-
Ich sehe auch gerade noch: Du verwendest Autoptimize.
Du hast dort nicht zufällig das Häkchen bei "HTML Code optimieren" drin, oder? Das würde nämlich exakt diesen "Fehler" verursachen. -
Gibt es denn eine Möglichkeit, die Passwörter quasi als Liste zu verschlüsseln?So war das eigentlich auch gemeint.
Du kannst die Excel/CSV in PHP einlesen, dann die Passwörter hashen/verschlüsseln und dann wieder in eine Excel/CSV Datei schreiben.http://www.roytuts.com/read-from-and-…file-using-php/
http://php.net/manual/de/function.md5-file.php
Anmerkung: Variante 2+3 führen dazu, dass die Passwörter nachher nur als MD5 gehashed sind. Das ist eigentlich veraltet und wird nur noch als Fallback unterstützt. Soll heißen: Wird funktionieren, ist aber nicht so sicher, wie Passwörter, die WordPress selbst ablegt.
Deshalb wäre die erste Variante (Passwörter manuell neu generieren lassen) eigentlich zu bevorzugen.
Das soll jetzt nicht heißen, dass man das auf keinen Fall so machen soll. Ich wollte es nur gesagt haben... -
So, jetzt bin ich wirklich sehr gespannt ob ich dieses Problem mysqldumper-wird-von-wordpress-ueberlagert nicht mehr habe???Ich habe jetzt in diesem Thread nur mitgelesen, aber du hast die ganze Action nicht wirklich gemacht, um das MySQL dumper Problem zu lösen, oder?
Dort war doch ein ganz anderer Lösungsvorschlag Konsens (Subdomain). -
Hat jemand eine Idee, wie ich die Datensätze über XLS/CSV einlesen kann, ohne alle nochmal nachbearbeiten zu müssen?
Ich habe das Plugin "Import users from CSV with meta" probiert. Das funktioniert auch, aber die Passwörter werden damit nicht verschlüsselt. Also kann sich das Mitglied auch nicht einloggen.
Gruß
RobbiIst zwar nur ein Workaround, aber wenn die User Accounts erstellt wurden, müssten sich die User ja über die "passwort vergessen" Option neue Passwörter generieren können.
Müsste man dann natürlich entsprechend kommunizieren.Alternativ könntest du die Passwörter vor dem import per MD5 "verschlüsseln" und direkt in der XLS/CSV Liste hinterlegen.
Oder du schreibst dir einen eigenen importer, der die Passwörter entsprechend als MD5 einfügt.
-
Normalerweise sollte es reichen, wenn du wp-load.php per require oder include lädst. Danach sollten dir alle Funktionen zur Verfügung stehen.
Du solltest dann aber in dem externen Script unbedingt die Berechtigungen prüfen. Sonst baust du dir da ggf. eine echte Sicherheitslücke zusammen...
-
Kein Backup ist auf jeden Fall immer schlecht. Aber du kannst mal bei deinem Hoster nachfragen. In der Regel erstellen die auch Backups der letzten 1-2 Wochen.
Cloudflare dürfte deine Dateien aber nicht verändert haben. Ein CDN "zieht" sich ja nur die Dateien von deinem Server und "schaltet" sich dann dazwischen (vereinfacht gesagt). Demnach sollten die Dateien auf deinem Server eigentlich unverändert sein.
Kann es sein, dass die "merkwürdige" Version immer noch von Cloudflare ausgeliefert wird (bin gerade nur mobil und kann es nicht prüfen)? -
Es kann durchaus am CDN liegen. Allerdings macht der ja nichts direkt auf deinem Webspace/Server. Aber es kann durchaus sein, dass deine Seite von Cloudflare z.B. "minified" ausgeliefert wird.
Die Fehler im Quellcode wären dann aber auch vorher schon da. Das sind ja keine Fehler, die durch die Formatierung entstanden sind, sondern z.B. solche Konstrukte wie "width="px"".
-
Wenn es vorgestern noch in Ordnung war, würde sich ja anbieten, einfach ein Backup zurückzuspielen.
So von aussen kann man natürlich sehr schwer beurteilen, wie es dazu gekommen sein mag...
Du könntest folgendes prüfen:
- Wann würde der Content das letzte Mal gespeichert?
- Gab es irgendwelche Updates (z.B. indem du die Zeitstempel der Dateien prüfst)Ganz von alleine passiert so etwas eigentlich nicht.
EDIT: Die Fehler im Quellcode bestanden übrigens auch schon am 2.5. ;)
-
Hallo an Alle,
ich habe eben zufällig festgestellt, dass mein Source Code plötzlich sehr merkwürdig aussieht.
Hat jemand vielleicht eine Ahnung wie so etwas zustande kommt?
Vielen Dank!!!Seite https://web-makeup.com
Vielleicht erklärst du uns, was du daran komisch findest und wie deine Erwartungen sind, wie der Source-Code aussehen sollte.
"Plötzlich sehr merkwürdig" impliziert ja, dass er vorher mal anders aussah (wie sah er aus und wann war vorher, was ist in der Zwischenzeit passiert)?Ansonsten enthält der Code eine ganze Menge Fehler (45 Errors, 10 Warnings). Das heißt, er ist nicht valide. Meinst du das mit "merkwürdig"?
Viele Grüße,
Daniel -
Gut. Jemanden von einem Glauben abzubringen ist eh schlecht bis unmöglich.
Technik hat ja zum Glück nichts mit Glauben zu tun. Die Fakten sind ja alle nachlesbar und eindeutig.
bei manchen tritt eine Verzögerungen beim Tls Handshake >
[...]
Nicht immer läuft alles glatt und manchmal hakt es bei einigen.Dem würde ich niemals widersprechen. Du hast aber behauptet, der Standort der CA würde eine Rolle spielen. Das ist faktisch einfach nicht korrekt (und auch in den beiden von dir verlinkten Threads nicht die Ursache).
Ich möchte mich ja hier auch gar nicht streiten. Deine Aussage basiert halt auf der Annahme, bei der Überprüfung des Zertifikats würde der Browser mit dem Server der CA kommunizieren. Das ist aber einfach nicht der Fall, daher ist deine Schlussfolgerung eben auch nicht korrekt.
Apropos...
Fun-Fact am Rande:
Meines Wissens nach gibt es gar keine (anerkannte) CA in Indien.
https://mozillacaprogram.secure.force.com/CA/IncludedCACertificateReport -
Also, ich komme nicht vorwärts. Offensichtlich kann man mit plugin_action_links_ tatsächlich nur einen Link und keinen Prozeduraufruf als Action Link einrichten. danielgoehr hat mir einen Workaround empfohlen, den ich noch nicht durchblicke.
Noch einmal, was ich erreichen möchte: einem Plugin einen Action Link hinzufügen, mit welchem eine Prozedur im Plugin-Code aufgerufen wird. Diese Prozedur soll ein kleines Menü anzeigen, welches Parametereingaben ermöglicht.Dafür wäre mein Workaround nicht wirklich geeignet. Das Menü muss ja irgendwo her kommen. Das heißt, eigentlich musst du erstmal die Seite erzeugen (mit add_menu_page() ) auf der dein Menü dann sein soll und dann per action_link dorthin verweisen. Das wäre ja auch eigentlich der "normale" Vorgang. Vielleicht erklärst du nochmal, wie genau und warum du davon abweichen möchtest/musst.
Du hattest mir ja auch vorhin eine PM geschickt. Darin meintest du, das Ganze sollte auch funktionieren, wenn das Plugin gar nicht aktiviert ist. Das dürfte nicht möglich sein, weil ein deaktiviertes Plugin ja quasi keinen Code einbindet.
Trotzdem kurz mein Workaround in sehr verkürzert Form (ungetestet):
Du setzt als Ziel des Links die Plugin-Seite und hängst dort aber einen GET-Parameter (z.B. "?dein_parameter=dein_wert") an.
Dann kannst du mit ...
Codeif(isset($_GET['dein_parameter']) && $_GET['dein_parameter']=='dein_wert') { //Hier der Code, der ausgeführt werden soll... }... beliebigen Code ausführen.
Aber wie gesagt, das setzt natürlich voraus, dass dein Plugin aktiviert ist.
-
Möchtest du ein Template für die Startseite erstellen, kannst du das neue Template einfach in front-page.php umbenennen. Falls das Template rechts bei jeder Seite auswählbar sein soll, musst du im Template ganz oben (in dem auskommentierten Teil) den Namen des Templates anpassen.
-
Also mal völlig abgesehen davon, welcher Hoster es am Ende sein soll: 60 Euro für 400.000 Besucher im Monat und dann auch noch gemanaged, halte ich für sehr optimistisch. Da kannst du nur hoffen, dass die User alle schön verteilt und nacheinander die Seite benutzen ;)
-
Ergänzend zu dem bereits gesagten: Ich finde das mit der Überschrift, die auf das Header-Bild "rutscht", zwar ganz schick, aber schwarzer Text auf dem dunklen Header-Bild ist irgendwie nicht ganz optimal.