| FAQ |
| Kalender |
|
|
#1 | ||
|
|||
|
Mycket flitig postare
|
Hejsan. Jag håller på med en "bot" som är kodad i Java, och nu ska jag "autha" denna bot. Klienten skickar strings med lösenord och användarnamn till min hemsida, min hemsida ska sedan verifiera lösenorder & användarnamnet och skickar sedan tillbaka "Valid" eller "Invalid". Men problemet är att phpfilen inte får tag på lösenordet & användarnamnet i datorbasen. Någon som haft detta problem förut och kan hjälpa mig ?
MvH Andreas |
||
|
|
Svara med citat
|
|
|
#2 | ||
|
|||
|
Klarade millennium-buggen
|
Vad är problemet?
Att du inte vet vad du gör när du kodar eller att du inte kan beskriva dina problem i ett foruminlägg? Ge oss lite mera uppgifter bara så ska vi nog lösa ditt problem. Till exempel om din "php-fil" fungerar när du anropar den manuellt eller på annat sätt. |
||
|
|
Svara med citat
|
|
|
#3 | ||
|
|||
|
Bara ett inlägg till!
|
Citat:
|
||
|
|
Svara med citat
|
|
|
#4 | ||
|
|||
|
Mycket flitig postare
|
Citat:
Jag kan komma med mer information när jag kommer hem. Och det är inte jag som kodar PHP, en polare till mig gör det. Jag kodar endast Java. |
||
|
|
Svara med citat
|
|
|
#5 | ||
|
|||
|
Klarade millennium-buggen
|
Om det inte är du som kodar "php-filen" så är det ännu svårare att hjälpa dig.
Men det är normalt inget problem att se vad som skickas från din java-applikation om du riktar in den mot en webbserver du har till exempel lokalt, så kan du analysera trafiken. |
||
|
|
Svara med citat
|
|
|
#6 | ||
|
|||
|
Nykomling
|
Citat:
|
||
|
|
Svara med citat
|
|
|
#7 | ||
|
|||
|
Nykomling
|
Kod:
<?php
* *validateAuth();
* *exit();
* *function validateAuth() {
* * * *$Registered = array(array("username" => "USER", "password" => "PASS"),
* * * *);
* * * *$outputString = '';
* * * *$username = addslashes(htmlspecialchars(urldecode(strtolower($_GET['username']))));
* * * *$password = sha1(addslashes(htmlspecialchars(urldecode(strtolower($_GET['password' ])))));
* * * *for($i = 0; $i < count($Registered); $i++) {
* * * * * *if($Registered[$i]['username'] == $username && sha1($Registered[$i]['password']) == $password) {
* * * * * * * *echo("Valid");
* * * * * * * *exit();
* * * * * * * *break;
* * * * * * }
* * * *}
* * * *echo("Invalid");
* * * *exit();
* *}
?>
Kod:
public void Authentication(){
try {
String auth = Config.AUTH;
String pass = Config.PASS;
String s1 = "";
URL url = new URL("http://www.vortexbot.com/authorization.php?username="+
* *java.net.URLEncoder.encode(auth, "UTF-8") +"&password="+ java.net.URLEncoder.encode(pass, "UTF-8"));
URLConnection urlconnection = url.openConnection();
BufferedReader bufferedreader = null;
bufferedreader = new BufferedReader(new InputStreamReader(urlconnection.getInputStream()));
s1 = bufferedreader.readLine();
if(auth.equals(""))
{
System.out.println("You must enter an auth and pass in your Settings.ini");
System.exit(0);
}
if(pass.equals(""))
{
System.out.println("You must enter an auth and pass in your Settings.ini");
System.exit(0);
}
if(!s1.equals("Valid"))
{
System.out.println("Incorrent Auth and/or Pass");
System.exit(0);
}
bufferedreader.close();
} catch (Exception e) {
System.out.println("Connection failed..");
System.out.println("You may be behind a firewall..");
System.out.println(e.getMessage());
System.exit(0);
*}
}
|
||
|
|
Svara med citat
|
|
|
#8 | |||
|
||||
|
Medlem
|
Du kör ju strtolower på variablerna på vissa ställen..
Kanske ändra i if-satsen till följande fungerar? Citat:
|
|||
|
|
Svara med citat
|
|
|
#9 | |||
|
||||
|
Mycket flitig postare
|
PHP skriptet är ju allt annat än rätt
![]() -använd aldrig strtolower på lösenord -spara aldrig lösenord i klartext som du verkar göra enl. php skriptet -varför lagra alla användare i minnet i en array? i koden ovan är även arrayen helt tom så det blir omöjligt att logga in, använd sql istället... |
|||
|
|
Svara med citat
|
|
|
#10 | ||
|
|||
|
Nykomling
|
Citat:
Och jag sparar inte lösenorden i klartext, utan det är ett forum. Tacksam för alla svar. |
||
|
|
Svara med citat
|
| Svara |
|
|