Link- / Formulardaten an ein anderes geöffnetes Fenster übergeben

NTDY

Erfahrenes Mitglied
Ich habe ein Problem, dass ich nicht lösen kann.

Ich habe ein Fenster (read_folder.php), dass per PHP, Dateien in einem Verzeichnis ausliest und sie als Link oder Formular-Submit einem anderen, schon geöffneten, Fenster (main.php) übergeben soll, damit in der main.php als Aktion die ausgewählte Datei in ein Textarea eingelesen werden soll.

Kann mir jemand an einem Beispiel erklären wie ich das machen kann. Ich denke, dass geht nur mit Javascript.

P.S. Bitte schreibt so einfach es geht, da ich noch Javascript Amateur bin. :-)

Liebe Grüße

Andreas
 
Ich habe eine Hauptseite. Da befindet sich ein Button "Datei öffnen". Wenn man diesen Button klickt, dann öffnet sich ein Popup. In diesem Popup wird per PHP ein Verzeichnis ausgelesen. Wenn man auf die verlinkte Datei drückt, gelangt man wieder in das Hauptfenster und die Datei wird im Textarea des Hauptfensters eingelesen.
 
AH sehr schoen genau mein Problem.
Ich möchte gern in einem anderen Fenster eine Smilie Übersicht haben und für das angeklickte Smilie einen Text in meine Textarea des Hauptfensters eintragen.

Hoffe mal es findet sich ne Lösung :D

standing by..

Gruß
Frank
 
Zuletzt bearbeitet:
@BeaTBoxX: http://www.tutorials.de/tutorials19546.html

@NTDY: du könntest es acuh auf die Art in dem o.g. Link probieren, wäre aber wenig empfehlenswert, weil dann alles Dateien komplett auslesen müsstest und in JS-Variablen speichern.

Besser wäre: du speicherst im Popup die Dateinamen in Formularfeldern... Radiobuttons am Besten.
Dem Fenster, welches das Popup öffnet, gibst du per JS einen Namen:
Code:
<script type="text/javascript">
<!--
self.name="mutti";
//-->
</script>
...jetzt musst du dem Formular im Popup nur das target "mutti" geben.... und das Formular wird ans Mutterfenster gesendet.
 
Ach herje.

Lass mich bitte die ganze Prozedur wiederholen.

Im Mutterfenster [mutter.php] steht exemplarisch folgendes:
Code:
<script type="text/javascript">
<!--

self.name="mutti";

function popup(){ 
HELP=window.open("kind.php", "Lies_folder","width=320, height=300");
HELP.focus; 
} 

//-->
</script>
...
<form name="mamas_form" action="mutter.php" method="post">
<textarea name="textfeld">
<?php
//lese Datei aus, das ich gleich vom Kind [kind.php] bekomme.
?>
</textarea>
</form>
<a href="javascript:popup();">Zeige alle Dateien die eingelesen werden sollen</a>


So. Und im Kindfenster [kind.php] habe ich dann zu stehen.

Code:
<?php
$handle=opendir ('.');
while (false !== ($file = readdir ($handle))) {
    echo "
<form action=\"mutti\" method=\"post\">
<input type=\"radio\" name=\"Datei\" value=\"$file\">$file
<input type=\"submit\" value=\"Diese Datei bitte oeffnen\">
</form>
";
}
closedir($handle); 
?>

Dennoch wäre es mir viel wichtiger, wenn ich es als Link machen könnte, da ich den User dann nicht so viel klicken lassen müßte.

Andreas
 
Genau so hatte ich es gemeint.
Wenn du es als Link willst, dann gebe den Links eben das target "mutti".
Die Variable $file kannst du ja als Parameter an die Linkziele ranhängen.
 
Geht aber leider nicht.

Wenn ich den Submit Button im popup kind.php drücke, leitet er an eine leere Seite (Site not found) weiter. Muß man da nicht statt <form action=\"mutti\" method=\"post\"> irgenwas schreiben, was die Überleitung zum Mutterfenster schafft?
 
Neuer Ansatz

Ich habe nun einen interessanten Code gefunden, der das besagte tun könnte. Allerdings gibt es hier noch einen kleinen JS-Fehler. Doch vielleicht kann jemand von euch ihn lösen.

mutter.html (Die Datei, die die Datei mit dem Verzeichnishandler ausliest)
Code:
<head>
<script language="javascript">
<!--
  var neu=null;
  function directer() {
    neu=window.open('', 'Directory', 'height=200, width=450');
    if (neu != null) {
      if (neu.opener == null) {
        neu.opener = self;
      }
      neu.location.href = 'kind.html';
    }
  }
//--></script>
</head>
<body onLoad="javascript:directer();">
<form name="hiddenForm" action="test.php">
  <input type="hidden" name="meinText">
</form>

kind.html (Die Datei, wo später viele Datei-Links hinkommen werden)
Code:
<script language="javascript">
<!--
  function copyForm() {
opener.document.hiddenForm.meinText.Value = document.popupForm.meinText.Value; 
opener.document.hiddenForm.submit();
self.close();
return false;
  }
//--></script>
</head>
<body>
Tipp was ein<br>
<form name="popupForm" onSubmit="return copyForm()">
<input type="text" name="meinText"><br>
<input type="button" value="Abschicken" onclick="copyForm()">
</form>


test.php (hier sollte nun was stehen, oder?)
Code:
<body>
<?php
echo "<pre>";
echo print_r($_GET);
echo "</pre>";
?>
</body>

Allerdings werden test.php weden in der Url, noch im print_r Variablen ausgegeben.

Andreas
 
NTDY hat gesagt.:
Geht aber leider nicht.

Wenn ich den Submit Button im popup kind.php drücke, leitet er an eine leere Seite (Site not found) weiter. Muß man da nicht statt <form action=\"mutti\" method=\"post\"> irgenwas schreiben, was die Überleitung zum Mutterfenster schafft?

Wo hab ich von der action "mutti" gesprochen?
Die Rede war immer von dem target... action muss natürlich das PHP-Skript sein, wohin das Formular gesendet wird.
 

Neue Beiträge

Zurück