Ich habe nach einer Möglichkeit gesucht, die Information (Zeichenfolge) aus einer Variablen auf der vorherigen Seite hinzuzufügen.Variablen hinzufügen (Textfeld angeben) auf der vorherigen Seite
Soweit ich weiß, sollte dies mit Javascript irgendwie möglich sein.
Neue ein konnte die alte nicht bekommen richtig zu arbeiten ..
<script type="text/javascript">
function newPopup(url) {
popupWindow = window.open(
url,'popUpWindow','height=510,width=350,left=10,top=10,resizable=yes,scrollbars=yes,toolbar=yes,menubar=no,location=no,directories=no,status=yes')
}
</script>
<a href="JavaScript:newPopup('(url)');">Armory Avatar</a>
Ich habe dieses Stück Code, der den Link in einem neuen Popup-Fenster öffnet (das die URL der vorherigen erinnert Seite). In diesem Fenster können Personen einige Informationen über ihren WoW-Charakter und den Bereich, in dem sich dieser Charakter befindet, einfügen. Nachdem sie dies getan haben und auf "submit" geklickt haben, zeigt die Site die URL für den Avatar an, der aus der Blizzard-Waffenkammer stammt.
http://eu.battle.net/static-render/eu/(imagepath)
-Code für die Popup-Seite: diesen aktuellen Code Aktualisiert (7-4-2012)
<?php
if (!isset($_POST['submit'])) {
?>
<!-- The fill in form -->
<html>
<head>
<title>Armory Avatar</title>
</head>
<body>
<form method="post" action="<?php echo $PHP_SELF;?>">
Character Name:<input type="text" size="12" maxlength="50" name="cname"><br />
Realm Name:
<select name="rname">
<optgroup label="English Realms">
<option value="aerie-peak">Aerie-Peak</option>
<option value="agamaggan">Agamaggan</option>
<option value="aggramar">Aggramar</option>
etc etc etc.
</optgroup>
</select><br />
<input type="submit" value="submit" name="submit">
</form>
<?php
} else { //If form is submitted execute this
$charname = $_POST["cname"]; //input character name
$realmname = $_POST["rname"]; //input realm name
$charurl = urlencode(utf8_encode($charname)); //prepares character name for url usage
$realmurl = 'http://eu.battle.net/api/wow/character/'.$realmname.'/'; //combines the basic url link with the realm name
$toon = $realmurl.$charurl; //adds the charactername behind the realm url
$data = @file_get_contents($toon); //retrieves the data from the armory api
if ($data) {
// if armory data is found execute this
$obj = json_decode($data); //converts the data from json to be used in the php code ?>
<img src='http://eu.battle.net/static-render/eu/<?php echo $obj->thumbnail; ?>'> </img><br /> <?php //Is url link to image
$armoryname = utf8_decode($obj->name); //makes the name readable again
echo "Name: " . $armoryname . "<br />"; //character name
echo "Level: " . $obj->level . "<br />"; //character level
echo "Achievement Points : " . $obj->achievementPoints . "<br />"; //Achievement Points
if ($obj->gender == 1){ //Deteremines the gender of the character
echo "Gender : Female <br />" ; //displays gender as female
}else{
echo "Gender : Male <br />" ; //dispalays gender as male
}
$image = "http://eu.battle.net/static-render/eu/".$obj->thumbnail;
?>
Image: <a href='http://eu.battle.net/static-render/eu/<?php echo $obj->thumbnail; ?>'> http://eu.battle.net/static-render/eu/<?php echo $obj->thumbnail; ?></a><br />
<!--Button submit code-->
<script type="text/javascript">
$('button.cancel_link').click(function() {
// Change the value of the input with an ID of 'avatarurl'
// with the dynamic value given to you by the external JSON link
window.opener.getElementById('avatarurl').value = '<?php echo $image; ?>';
});
</script>
<input> <!-- The button here -->
<?php
}
else { // if armory data is not found execute this ?>
error code stuf
}
}
?>
Jetzt muss ich diese Codezeile:
$ image = "http://eu.battle.net/static-render/eu/". $ Obj-> thumbnail;
Zurückgeben, wenn das Fenster geschlossen ist, oder einfach durch Drücken einer anderen Übergabetaste (bevorzugt auf Schließen-Schaltfläche). Und wenn eine der beiden geschehen muss es dies in dieser Zeichenfolge einzufügen:
<input type="text" class="textbox" name="avatarurl" size="25" maxlength="100" value="{$avatarurl}" /></td>
Die texbox genannt avatarurl.
Hoffentlich weiß jemand von Ihnen, wie man ein Javascript ändert oder erstellt, das das für Sie tut. Da mein PHP schon stark eingeschränkt ist und mein JavaScript-Wissen so gut wie nicht ist.
Sie sprechen über einen Link mit dem Klassennamen 'cancel_link' Ich denke, Sie dachten eine Schaltfläche mit diesem Klassennamen oder? Die zweite Frage: Der zurückgegebene Wert ist nur der letzte Teil der URL. Wäre es nicht einfacher $ image zurückzugeben? Seitdem habe ich sofort die komplette URL. – Anori
Ja, in beiden Fällen hast du Recht - ich werde meine Lösung aktualisieren – hohner
Die einzige Frage, die ich jetzt habe, ist: ID von 'avatarurl' welche ID kennst du genau damit, da ich keine ID-Nummer finden kann. – Anori