PHP Forum

PHP Forum (http://www.selfphp.de/forum/index.php)
-   MySQL/MySQLi (http://www.selfphp.de/forum/forumdisplay.php?f=22)
-   -   neue Benutzerdaten in htpasswd einfügen (http://www.selfphp.de/forum/showthread.php?t=25616)

drdossi 16.08.2015 20:04:42

neue Benutzerdaten in htpasswd einfügen
 
Hallo,
habe bisher erfolgreich das u.a Script angewandt. Nach einer neuen Registrierung wurde der neue Benutzer und das Passwort in die vorhandene htpasswd eingetragen.
Nachdem 1und 1 die PHP Versionen geändert hatte, funktioniert das Script nicht mehr und produziert eine Fehlermeldung.
Habe auch schon versucht mysql einfach durch mysqli zu ersetzen, da jetzt dieser Interpreter bei 1und1 läuft. Geht aber nicht. Wer kennt die neuen Befehle?

Hier mein bisher verwendeter Code:


PHP-Code:

//**********  Custom code  ************
$res mysql_query("select * from mitglieder");
  
$safe"../../firewall";     // hier den Pfad des zu schützenden Verzeichnisses eintragen
                     // Angaben relativ zur Document Root.
                     // Beispiel zu schützendes Verzeichnis == /foo/bar
                     // $safe="foo/bar";
                     // Die Dateien werden dann automatisch in dieses Verzeichnis gelegt.
      
           
$htpasswdfopen("$safe/.htpasswd""w");        
             while(
$data=mysql_fetch_object($res))
{
fputs($htpasswd"$data->Email:".crypt($data->Kennwort,CRYPT_STD_DES)."\n");}
 
fclose($htpasswd); 


sysop 17.08.2015 10:36:45

AW: neue Benutzerdaten in htpasswd einfügen
 
Wenn du schon eine Fehlermeldung bekommst, wäre es hilfreich, wenn du sie uns mitteilen würdest!
Was geht denn nicht? Warum steht das ganze nicht in Code-Tags usw.

So bekommst du von mir leider nur die Standardantwort:

Ich kenne die Befehle, genauso, wie http://us1.php.net/manual/de/, aber das hilft dir wohl nichts.

drdossi 26.10.2015 19:07:25

AW: neue Benutzerdaten in htpasswd einfügen
 
Ich verwende phprunner (Software von Xlinesoft) um Registrierungsformulare zu erstellen.

In das Generierungsprogramm kann man eigenen Code einfügen.
Das habe ich genutzt um neue Registrierungsinformationen in eine vorhandene .htpasswd Datei einzufügen.
Nachdem 1und1 die PHP Versionen auf 5.ff umgestellt hatte, bekam ich eine Fehlermeldung.

altes Script welches vor PHP 5 einwandfrei funktionierte:

PHP-Code:

//**********  Custom code  ************
$res mysql_query("select * from _passwort");
  
$safe"../firewall";     // hier den Pfad des zu schützenden Verzeichnisses eintragen
                     // Angaben relativ zur Document Root.
                     // Beispiel zu schützendes Verzeichnis == /foo/bar
                     // $safe="foo/bar";
                     // Die Dateien werden dann automatisch in dieses Verzeichnis gelegt.
      
           
$htpasswdfopen("$safe/.htpasswd""w");        
             while(
$data=mysql_fetch_object($res))
{
fputs($htpasswd"$data->Benutzer:".crypt($data->Passwort,CRYPT_STD_DES)."\n");}
fclose($htpasswd); 

Fehlermeldung nach der Umstellung:

Fehlertyp 8192
Fehlerbeschreibung mysql_query(): The mysql extension is deprecated and will be removed in the future: use mysqli or PDO instead
URL zfa-pool.de/mitgliedschaft/register.php?
Fehlerdatei /homepages/43/d449687348/htdocs/pool/mitgliedschaft/include/events.php
Fehlerzeile 116


neues Script von mir geändert, funktioniert so aber nicht.....

PHP-Code:

//**********  Custom code  ************
$result mysqli_query($mysqli,'select * from _passwort');
  
$safe"../firewall";                                
  
$htpasswdfopen('$safe/.htpasswd'"w");        
  while(
$data=mysqli_fetch_assoc($result))
{
fputs($htpasswd'$data->Benutzer:'.crypt($data->Passwort,CRYPT_STD_DES)."\n");}
fclose($htpasswd); 

Fehlermeldung nach Abschicken des Registrierungsformulars:
Fehlertyp 2
Fehlerbeschreibung mysqli_query() expects parameter 1 to be mysqli, null given
URL zfa-pool.de/mitgliedschaft/register.php?
Fehlerdatei /homepages/43/d449687348/htdocs/pool/mitgliedschaft/include/events.php
Fehlerzeile 116

sysop 27.10.2015 13:32:30

AW: neue Benutzerdaten in htpasswd einfügen
 
Hallo

Eigentlich sollte mysql_query keinen Fehler werfen, da das nur ein Notice ist (also ein Hinweis, dass die extension irgendwann verfällt).
Das Script sollte also eigentlich noch laufen!

Deine Umarbeitung ist fehlerhaft,

PHP-Code:

$result mysqli_query($mysqli,'select * from _passwort'); 

Plus
Code:

Fehlerbeschreibung mysqli_query() expects parameter 1 to be mysqli, null given
ergeben, dass in $mysqli nichts steht, da gehört die Datenbankverbindung hinein. Sieh dir myssqli etwas genauer an.


PHP-Code:

$link mysqli_connect("localhost""my_user""my_password""world");
$result mysqli_query($linki,'select * from _passwort'); 


drdossi 05.03.2019 20:00:37

htpasswd mit mysqli bearbeiten
 
Hallo,
in neueren PHP Versionen wird mysqli verlangt.

Wie würde folgender mysql-Code in mysqli lauten?

PHP-Code:

$res mysql_query("select * from mitglieder");
  
$safe"../../firewall";     // hier den Pfad des zu schützenden Verzeichnisses eintragen
                     // Angaben relativ zur Document Root.
                     // Beispiel zu schützendes Verzeichnis == /foo/bar
                     // $safe="foo/bar";
                     // Die Dateien werden dann automatisch in dieses Verzeichnis gelegt.
      
           
$htpasswdfopen("$safe/.htpasswd""w");        
             while(
$data=mysql_fetch_object($res))
{
fputs($htpasswd"$data->Email:".crypt($data->Kennwort,CRYPT_STD_DES)."\n");}
 
fclose($htpasswd); 


chorn 06.03.2019 07:57:28

AW: htpasswd mit mysqli bearbeiten
 
Hast du jetzt ernsthaft weder das Manual gelesen, noch gegoogelt und auch nichts selber ausprobiert?

drdossi 07.03.2019 14:40:34

AW: neue Benutzerdaten in htpasswd einfügen
 
Ja, das ist so, und ich werde das in meiner Restlaufzeit auch nicht in Zukunft tun. Ich habe das Problem damals mit Zurücksetzen der PHPVersion bei 1und1 gelöst. Mit dem jetzt immer kostenpflichtiger werdenden extended Support wollte ich einen neuen Versuch starten. Um einem Kommentar in der Richtung vorzubeugen: mir ist bewußt, dass ich hier wohl falsch bin. Aber vielleicht findet sich ja doch Jemand der sich erbarmt mir den Code umzuschreiben. Gerne auch gegen Bezahlung. Über die Anwendung "PHPrunner" von XlineSoft hinaus und Einfügen von Codes vertiefe ich mich nicht weiter in die Materie und genieße lieber mein Rentendasein......

vt1816 07.03.2019 15:38:45

AW: neue Benutzerdaten in htpasswd einfügen
 
PHP-Code:

<?php
$link 
mysqli_connect('localhost''my_user''my_password''my_db');

/* check connection */
if (mysqli_connect_errno()) {
    
printf("Connect failed: %s\n"mysqli_connect_error());
    exit();
}

$query 'SELECT * FROM mitglieder';
$safe"../../firewall";

if (
$result mysqli_query($link$query)) {

    
/* fetch associative array */
    
$htpasswdfopen("$safe/.htpasswd""w");        
    while (
$data mysqli_fetch_object($result)) {
        
fputs($htpasswd"$data->Email:".crypt($data->Kennwort,CRYPT_STD_DES)."\n");
    }

    
fclose($htpasswd);  

    
/* free result set */
    
mysqli_free_result($result);
}

/* close connection */
mysqli_close($link);
?>



PS: zfa_p*.de gibt es doch gar nicht mehr!?

drdossi 07.03.2019 17:46:37

AW: neue Benutzerdaten in htpasswd einfügen
 
das stimmt, aber die "bezirksstelle-bielefeld.de". Da habe ich einmal ein Registrierungsformular und Formulare für den Notdiensttausch---und übrigens vielen Dank.........


Alle Zeitangaben in WEZ +2. Es ist jetzt 12:57:03 Uhr.

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