Efter konvertering, kan inte beställa nytt lösenord

Här kan du ställa frågor om problem med och drift av phpBB 3 (3.0.0 eller senare). Det är här du bör skapa en tråd om du har ett problem, vill ställa en fråga och vill ha ett svar. Gäller det något annat, var vänlig bläddra nedåt på sidan.

Moderatorer: Moderatorgrupp, Supportgrupp

Kategoriregler
Här kan du ställa frågor om problem med och drift av phpBB 3 (3.0.0 eller senare). Det är här du bör skapa en tråd om du har ett problem, vill ställa en fråga och vill ha ett svar. Gäller det något annat, var vänlig bläddra nedåt på forumindex.

Klicka här för att se våra allmänna forumregler.
Användarens profilbild
Marcus
Hedersmedlem
Hedersmedlem
Inlägg: 4321
Blev medlem: 2004-01-07 22:12
Svar: 0

Re: Efter konvertering, kan inte beställa nytt lösenord

Inlägg av Marcus »

Kan felet vara ett $-tecken framför funktionsnamnet? :ugeek:
Marcus Farrington - Administratör på phpBB Sverige
OBS! På förekommen anledning ges ingen support via PM.

Webb- & Drupalutvecklare på Webbyrå Grebban.
Linde
Aktiv medlem
Aktiv medlem
Inlägg: 31
Blev medlem: 2007-05-29 22:20
Svar: 0

Re: Efter konvertering, kan inte beställa nytt lösenord

Inlägg av Linde »

Så här löste jag det.

Denna fil plockar fram user_id och user_email ur forumet, skapar hashet utav eposten.
Och spar informationen i en ny tabell som heter convert_test.

Kod: Markera allt

<?PHP

$db_host1 = "";
$db_user1 = "";
$db_pass1 = "";
$db_databas1 = "";

/**
* Generate the email hash stored in the users table
*/

function gen_email_hash($email)
{
  return (crc32(strtolower($email)) . strlen($email));
}


$objConn = mysql_connect($db_host1, $db_user1, $db_pass1);

if(!$objConn)
{
die('Kunde inte ansluta: ' . mysql_error());
}

mysql_select_db($db_databas1,$objConn);

$strQuery = mysql_query("SELECT * FROM phpbb3_users WHERE user_email <> ''") or exit(mysql_error());

while ($r = mysql_fetch_array($strQuery))
{
	

//##########################################################################

$hash = gen_email_hash($r['user_email']);

$id = $r['user_id'];

mysql_query("INSERT INTO convert_test (user_email_hash,user_id) VALUES ('$hash', '$id')");

//###########################################################################
echo $r['username'] . " <br>";

}
mysql_close($objConn);
?>
Jag fick inte till så jag kunde spara allt i php trots många timmar så jag gjorde det i ASP som jag är hemma med. Då gick det direkt.
Så här såg den koden ut.

Kod: Markera allt

<%

Set mysql = Server.CreateObject("ADODB.Connection")
mysql.Open "Driver={MySQL ODBC 3.51 Driver};server=host.domain.se;uid=username;pwd=password;database=databas"
	
	
	
	SQLget = "SELECT * FROM convert_test"
	set RSget = mysql.Execute(SQLget)
		antal = 0
		Do until RSget.EOF
		
		hash = RSget("user_email_hash")
		id = RSget("user_id")
		
		SQLupdate = "UPDATE phpbb3_users SET user_email_hash = '"& hash &"' WHERE user_id = "& id &""
		mysql.Execute(SQLupdate)
		
		
		set id = nothing
		set hash = nothing
		
		antal = antal + 1
		RSget.MoveNext
		Loop
	
	
	Response.Write "Antal uppdaterade: " & antal
%>
Och anledningen till detta fel va ju att hash:et blev/blir olika på olika servrar. Så jag tycker det är mycket konstigt att ingen annan verkar ha haft samma problem.
Hur som va det mycket trevligt att jag fick lösa det själv, blev nog en cm längre iaf. Och lite mer grepp om PHP fick jag också.

// Danne
Användarens profilbild
Kjell
Hedersmedlem
Hedersmedlem
Inlägg: 4510
Blev medlem: 2006-11-11 23:35
Svar: 0

Re: Efter konvertering, kan inte beställa nytt lösenord

Inlägg av Kjell »

Bra jobbat Bild , du kan nog snart få plats med uppgifter här på forumet, vilket vi behöver ibland :D

Men att andra inte råkar ut för det tror jag beror på att konverteringen sker på samma server, även om det kan vara olika databaser.... eller då är det ingen som har uppmärksammat problemet (jag hade inte en tanke på det).
/Kjelle KonsultPoolen * Facebook * Twitter * MODx Verkstan
Brukar sova lite efter 29:e timman och Ingen support via PM!
Linde
Aktiv medlem
Aktiv medlem
Inlägg: 31
Blev medlem: 2007-05-29 22:20
Svar: 0

Re: Efter konvertering, kan inte beställa nytt lösenord

Inlägg av Linde »

Ja visst kan det kanske vara så.
Jag som skulle va så extra försiktig så jag hade en helt annan server. De flesta kanske inte har möjlighet att använda en helt annan kan jag kanske tänka mig.

Men nu är det löst iaf. Bara o forsätta med andra modifikationer nu när man är på G ;)
Kul kul...

Fast detta kommer ju onekligen att ställa till problem när forum skall byta servrar :/

// Danne
Skriv svar

Vilka är online

Användare som besöker denna kategori: 1 och 0 gäst