Auffordern eines Kontonamens

Ich habe ein Konto "hello" im Bitcoin-Daemon erstellt und wollte dieses ausführen. Immer wenn ich nach Aufforderung hallo eingab, gab getac1 ein leeres Array zurück. wohingegen getac2 und getac3 Adressen zurückgeben, die dem Konto hallo zugeordnet sind. Was vermisse ich? Angenommen, ich habe den richtigen Benutzernamen, das richtige Passwort, die IP-Adresse und den Port eingegeben.

<?php
require('easybitcoin.php');
$bitcoin = new Bitcoin("username", "password", "ip address", "8332");
//prompt function
function prompt($prompt_msg){
   echo("<script type='text/javascript'> var answer = prompt('".$prompt_msg."'); </script>");
   $answer = "<script type='text/javascript'> document.write(answer); </script>";
   return($answer);
}

//program
$prompt_msg = "Please enter account name";
$name = prompt($prompt_msg);

$getac1 = $bitcoin->getaddressesbyaccount($name);
$getac2 = $bitcoin->getaddressesbyaccount("hello");
$getac3 = $bitcoin->getaddressesbyaccount(hello);

print_r($getac1);
print_r($getac2);
print_r($getac3);
print_r($name);
echo "</pre>";
?>
Willkommen bei Bitcoin.SE! Ich werde mir deine Frage ansehen und sehen, ob ich eine Antwort finden kann.

Antworten (1)

Dies scheint ein subtiles Problem mit dem von Ihnen verwendeten Code zu sein, und ich glaube nicht, dass Sie einen vernünftigen Ansatz verfolgen, um den Namen aus der Eingabe zurückzubekommen. Das Javascript wird nicht innerhalb Ihres PHP ausgeführt, es wird nur ausgeführt, wenn es an den Browser gesendet wird.

Wenn es ausgeführt wird, wird Ihre Funktion promptaufgerufen, aber die Rückgabe ist alles innerhalb der Anführungszeichen in Zeile 7, was nicht das ist, was Sie in die Eingabe eingegeben haben, sondern genau das, was innerhalb der Anführungszeichen steht:

$answer = "<script type='text/javascript'> document.write(answer); </script>";

Ich sollte fragen, in welchem ​​​​Modus Sie Ihr PHP ausführen oder aufrufen - PHP kann eigenständig ausgeführt werden oder es kann mit einer Browser-Seitenanforderung ausgeführt werden.

Ich würde dies auf sehr rudimentäre Weise lösen, indem ich ein HTML-Formular erstelle, das nur angezeigt wird, wenn eine $POST-Option nicht mit der Eingabe festgelegt ist, das Formular so einrichtet, dass es an dieselbe URL zurücksendet, und zuerst wie gesagt nach den $POST-Daten sucht . Wenn die $POST-Daten festgelegt sind, erstellen Sie dann die Ausgabeseite – alles in einer einzigen PHP-Datei.

Ich rufe PHP mit einer Browserseitenanforderung auf. Könnten Sie mir vielleicht eine Richtung zeigen, in der ich recherchieren kann, damit ich das beheben kann? Ich bin ziemlich neu bei PHP, also bin ich mir nicht wirklich sicher, was ich tue