Hallo zusammen!
Wie kann ich denn folgendes realisieren? - Komm gerade nicht weiter (Denkblokade)
Ich habe ein Modul in dem ich ein Datum eingebe, einen Titel und ein Textfeld in dem ich ein Bericht eingeben kann. (funktioniert)
Nun wird das Datum und der Titel angezeigt. Nun soll noch ein Link angezeigt werden, wodurch ein PopUp-Fenster geöffnet wird und darin der Bericht stehen soll.
Verständlich?
Danke schonmal für Tipps.
Grüße
jerome
Hallo,
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
Wir haben in letzter Zeit festgestellt, dass die Kommunikation via Slack viel schneller und zielführender ist als ein Beitrag im Forum. Aufgrund der neuen und besseren Möglichkeiten der Kommunikation haben wir uns entschlossen das Forum nur noch als Archiv zur Verfügung zu stellen. Somit bleibt es weiterhin möglich hier nach Lösungen zu suchen. Neue Beiträge können nicht mehr erstellt werden.
Wir empfehlen, für deine Fragen/Probleme Slack zu nutzen. Dort sind viele kompetente Benutzer aktiv und beantworten jegliche Fragen, gerne auch von REDAXO-Anfängern! Slack wird von uns sehr intensiv und meistens "rund um die Uhr" benutzt
Selbst einladen kannst Du dich hier: https://redaxo.org/slack/
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
Hallo Markus,kills hat geschrieben:Hi,
du musst in dem PopUp eben auch wieder die index.php?article_id=3 etc aufrufen...
Ein PopUp ist nichts anderes als ein Frame oder Fenster
Gruß,
Markus
soweit war ich auch.
Nur jetzt das eigentlich Problem:
Code: Alles auswählen
<a href="#" onClick="SommerAktion=window.open('HIER MUSS DER LINK HIN',''
,'toolbar=0,location=0,directories=0,status=0,menubar=0,
scrollbars=0,resizable=0,width=550,height=400,top=,left='); return false;">
Ich muss doch eine extra Datei anlegen, die den Befehl hat, lese den Artikel aus. (getArticle())
Und jetzt ein weiteres Problem:
Wie bekomm ich in der Datei hin, dass nur ein REX_VALUE-Feld ausgelesen wird?
Oder geht dass auch einfacher??
Grüße + Danke
jerome
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
Hi,
folgendes Beispielmodul:
wenn du das ganze jetzt mit "index.php?article_id=4" aufrufst, dann kommt "Hier ist Datum und Uhrzeit". Wenn du das ganze jetzt mit "index.php?article_id=4&do=report" aufrufst, dann kommt "Hier ist der Bericht".
d.h. für "HIER MUSS DER LINK HIN" einfach "index.php?article_id=4&do=report" und fertig.
Gruß,
Markus
folgendes Beispielmodul:
Code: Alles auswählen
if ( @$_GET['do'] == 'report') {
echo 'Hier ist der Bericht';
} else {
echo 'Hier ist Datum und Uhrzeit';
}
d.h. für "HIER MUSS DER LINK HIN" einfach "index.php?article_id=4&do=report" und fertig.
Gruß,
Markus
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
Es hat nun fast alles geklappt mit dem PopUp und dem Auslesen.
Nur habe ich noch ein Problem, dass ich nicht lösen kann.
Dass ist nun mein Code für die Modulausgabe:
Mein Problem:
Wenn ich jetzt einen Artikel anlegen und darin zwei mal das Modul verwende.
Dann wird mir im PopUp-Fenster alle Inhalte von REX_VALUE[6] angezeigt, obwohl ich ja nur, dass dazugehörige möchte.
Leider kenn ich mich in der Struktur der Datenbank noch nicht so gut aus.
Aber wie kann ich, dass hin bekommen?
Dass wenn ich auf "mehr" von Modul1 klicke nur REX-VALUE von Modul1 angezeigt bekomme?
Danke schonmal!
Grüße
jerome
Nur habe ich noch ein Problem, dass ich nicht lösen kann.
Dass ist nun mein Code für die Modulausgabe:
Code: Alles auswählen
<?php
if ( @$_GET['do'] == 'report') {
echo '<br />REX_VALUE[6]';
} else {
echo "
<table border=\"0\" width=\"600\">
<tr>
<td width=\"100\">REX_VALUE[1]</td>
<td width=\"205\">REX_VALUE[2]</td>
<td width=\"20\">REX_VALUE[3]</td>
<td width=\"5\">:</td>
<td width=\"20\">REX_VALUE[5]</td>
<td width=\"205\">REX_VALUE[4]</td>
<td width=\"45\">";
if ('REX_VALUE[6]' == "") {
echo '';
}
else {
echo "<a class=\"erg-bericht\" href=\"#\" onClick=\"mehr=window.open('index.php?article_id=".$this->getValue(article_id)."&do=report',
'','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,
resizable=0,width=350,height=325,top=165,left=160'); return false;\">
mehr...</a>";
}
echo "</td></tr></table>";
}
?>
Wenn ich jetzt einen Artikel anlegen und darin zwei mal das Modul verwende.
Dann wird mir im PopUp-Fenster alle Inhalte von REX_VALUE[6] angezeigt, obwohl ich ja nur, dass dazugehörige möchte.
Leider kenn ich mich in der Struktur der Datenbank noch nicht so gut aus.
Aber wie kann ich, dass hin bekommen?
Dass wenn ich auf "mehr" von Modul1 klicke nur REX-VALUE von Modul1 angezeigt bekomme?
Danke schonmal!
Grüße
jerome
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
- Jan.Kristinus
- Admin
- Beiträge: 2166
- Registriert: 24. Aug 2004, 22:11
- Wohnort: Frankfurt
- Kontaktdaten: ICQ Website
@jan: Papa Jan bitte sag auch ma was
.. da muss ich ja nun antworten mein sohn
ich würde das vielleicht anders angehen.. einen artikel mit einem artikellistenmodul erstellen in dem du über die metadaten das datum den titel und die beschreibung eingibst (-> siehe moduldownloads). fuer jedes popup machst du einen artikel und dann wird über die artikelliste dann das popup (der eigentliche artikel) aufgerufen. das waere quasi eine ganz andere variante.
bei deiner version willst du alles in einem modul machen. da würde ich einen div/layer bauen und display:none machen. dort die inhalte rein, die du fuers popup moechtest. dann das popup öffnen (einen festen artikel) und dem eine id übergeben (z.b. über ein fortlaufenden counter im modul) . dann den layer vom popup aus auslesen (document.write(opener.document.getElementById("layername_ueber_id").innerHTML);) .. das sollte gehen.. ich hoffe ich konnte mich verstaendlich ausdruecken
lg
jan
.. da muss ich ja nun antworten mein sohn
ich würde das vielleicht anders angehen.. einen artikel mit einem artikellistenmodul erstellen in dem du über die metadaten das datum den titel und die beschreibung eingibst (-> siehe moduldownloads). fuer jedes popup machst du einen artikel und dann wird über die artikelliste dann das popup (der eigentliche artikel) aufgerufen. das waere quasi eine ganz andere variante.
bei deiner version willst du alles in einem modul machen. da würde ich einen div/layer bauen und display:none machen. dort die inhalte rein, die du fuers popup moechtest. dann das popup öffnen (einen festen artikel) und dem eine id übergeben (z.b. über ein fortlaufenden counter im modul) . dann den layer vom popup aus auslesen (document.write(opener.document.getElementById("layername_ueber_id").innerHTML);) .. das sollte gehen.. ich hoffe ich konnte mich verstaendlich ausdruecken
lg
jan
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/
Tel.: 069-900.20.60.30
http://www.yakamara.de/
Hallo Jan,jan hat geschrieben: bei deiner version willst du alles in einem modul machen. da würde ich einen div/layer bauen und display:none machen. dort die inhalte rein, die du fuers popup moechtest. dann das popup öffnen (einen festen artikel) und dem eine id übergeben (z.b. über ein fortlaufenden counter im modul) . dann den layer vom popup aus auslesen (document.write(opener.document.getElementById("layername_ueber_id").innerHTML);) .. das sollte gehen.. ich hoffe ich konnte mich verstaendlich ausdruecken
lg
jan
muss jetzt doch mal fragen und zwar:
>da würde ich einen div/layer bauen und display:none machen.
>dort die inhalte rein, die du fuers popup moechtest.
d.h. bei mir ich lese REX-VALUE[6] im Artikel mit aus, allerdings wird REX_VALUE[6] ja aber nicht angezeigt?!
>dann das popup öffnen (einen festen artikel) und dem eine id übergeben
>(z.b. über ein fortlaufenden counter im modul)
d.h. ich lege einen Artikel an, der einfach einen Artikel nach einer bestimmten ID ausliest?!
Aber welche ID bzw. welcher Counter?
Das kapier ich nicht so ganz.
Grüße
jerome
- Jan.Kristinus
- Admin
- Beiträge: 2166
- Registriert: 24. Aug 2004, 22:11
- Wohnort: Frankfurt
- Kontaktdaten: ICQ Website
hi jerome,
habe ich mir leider fast gedacht das ich das zu kompliziert ausgedrueckt habe..
ich schreib das mal in code (nicht getestet und auch nur beispielhaft)
ausgabe:
nun noch einen artikel erstellen und den irgendwo ablegen und die id fuer xy eintragen. dort dann das javascript mit dem opener reinsetzen... ein wenig klarer ?
gruss
jan
habe ich mir leider fast gedacht das ich das zu kompliziert ausgedrueckt habe..
ich schreib das mal in code (nicht getestet und auch nur beispielhaft)
ausgabe:
Code: Alles auswählen
<?php
if ($mcounter == "") $mcounter = 0;
$mcounter++;
echo "<div id=layer$mcounter style='display:none;'><br />REX_VALUE[6]</div>";
echo "
<table border=\"0\" width=\"600\">
<tr>
<td width=\"100\">REX_VALUE[1]</td>
<td width=\"205\">REX_VALUE[2]</td>
<td width=\"20\">REX_VALUE[3]</td>
<td width=\"5\">:</td>
<td width=\"20\">REX_VALUE[5]</td>
<td width=\"205\">REX_VALUE[4]</td>
<td width=\"45\">";
if ('REX_IS_VALUE[6]' == 1) {
echo '';
}
else {
echo "<a class=\"erg-bericht\" href=\"#\" onClick=\"mehr=window.open('index.php?article_id=xy&layer=layer$mcounter',
'','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,
resizable=0,width=350,height=325,top=165,left=160'); return false;\">
mehr...</a>";
}
echo "</td></tr></table>";
}
?>
gruss
jan
Yakamara Media GmbH & Co. KG | Kaiserstrasse 69 | 60329 Frankfurt
Tel.: 069-900.20.60.30
http://www.yakamara.de/
Tel.: 069-900.20.60.30
http://www.yakamara.de/
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
Hi jerome,
durch Jans Stichwort mit dem Counter, ist mir folgendes noch eingefallen.
Gruß,
Markus
durch Jans Stichwort mit dem Counter, ist mir folgendes noch eingefallen.
Code: Alles auswählen
<?php
if ( !isset( $ModuleCounter)) {
$ModuleCounter = 0;
}
$ModuleCounter++;
if ( @$_GET['do'] == 'report' && @$_GET['module'] == $ModuleCounter) {
echo '<br />REX_VALUE[6]';
} else {
echo "
<table border=\"0\" width=\"600\">
<tr>
<td width=\"100\">REX_VALUE[1]</td>
<td width=\"205\">REX_VALUE[2]</td>
<td width=\"20\">REX_VALUE[3]</td>
<td width=\"5\">:</td>
<td width=\"20\">REX_VALUE[5]</td>
<td width=\"205\">REX_VALUE[4]</td>
<td width=\"45\">";
if ('REX_VALUE[6]' == "") {
echo '';
}
else {
echo "<a class=\"erg-bericht\" href=\"#\" onClick=\"mehr=window.open('index.php?article_id=".$this->getValue(article_id)."&module=". $ModuleCounter."&do=report',
'','toolbar=0,location=0,directories=0,status=0,menubar=0,scrollbars=1,
resizable=0,width=350,height=325,top=165,left=160'); return false;\">
mehr...</a>";
}
echo "</td></tr></table>";
}
?>
Markus
Hi!
Erst mal vielen Dank und großes Lob.
Wenn man mal nicht weiter weiß wird echt immer geholfen!
Ich habe eure Codes mal kurz getestet, jedoch haben diese noch nicht so funktioniert wie ich wollte. Werde Sie demnächst mal ausführlicher testen!
Desweiteren hatte ich mir überlegt, dass ich das PopUp bzw. den Text der im PopUp angezeigt werden soll, mittels einer speziellen MySQL-Abfrage realisiere könnte.
Aber auf welche Datenbank etc. muss ich für einen Artikel zugreifen?
Verschiedene Versuche haben jeweils fehlgeschlagen.
Habe vorerst einfach die Methode verwendet, für Text der ein PopUp benötigt, ein eigenen Artikel zu verwenden.
Grüße
jerome
Erst mal vielen Dank und großes Lob.
Wenn man mal nicht weiter weiß wird echt immer geholfen!
Ich habe eure Codes mal kurz getestet, jedoch haben diese noch nicht so funktioniert wie ich wollte. Werde Sie demnächst mal ausführlicher testen!
Desweiteren hatte ich mir überlegt, dass ich das PopUp bzw. den Text der im PopUp angezeigt werden soll, mittels einer speziellen MySQL-Abfrage realisiere könnte.
Aber auf welche Datenbank etc. muss ich für einen Artikel zugreifen?
Verschiedene Versuche haben jeweils fehlgeschlagen.
Habe vorerst einfach die Methode verwendet, für Text der ein PopUp benötigt, ein eigenen Artikel zu verwenden.
Grüße
jerome
- Markus.Staab
- Entwickler
- Beiträge: 9634
- Registriert: 29. Jan 2005, 15:50
- Wohnort: Aschaffenburg/Germany
- Kontaktdaten: ICQ Website
Hi jerome,
Das bekommen wir dann zusammen hin
Einfach mit der SQL Klasse arbeiten.
Beispiel:
Gruß,
Markus
Solche Komplimente nehmen wir natürlich gerne dankend anjerome hat geschrieben: Erst mal vielen Dank und großes Lob.
Wenn man mal nicht weiter weiß wird echt immer geholfen!
Gib einfach nochmal bescheid, was wie nicht funktioniert.jerome hat geschrieben: Ich habe eure Codes mal kurz getestet, jedoch haben diese noch nicht so funktioniert wie ich wollte. Werde Sie demnächst mal ausführlicher testen!
Das bekommen wir dann zusammen hin
Welche Datenbank du verwendest, und wie man die Verbindung dazu herstellt, darum brauchst du dich nicht zu kümmern.jerome hat geschrieben: Desweiteren hatte ich mir überlegt, dass ich das PopUp bzw. den Text der im PopUp angezeigt werden soll, mittels einer speziellen MySQL-Abfrage realisiere könnte.
Aber auf welche Datenbank etc. muss ich für einen Artikel zugreifen?
Verschiedene Versuche haben jeweils fehlgeschlagen.
Einfach mit der SQL Klasse arbeiten.
Beispiel:
Code: Alles auswählen
$sql = new sql();
$qry = 'SELEC * FROM rex_article WHERE status = 1 ORDER BY createdate LIMIT 5';
$sql->setQuery($qry);
$result = $sql->get_array();
if ( is_array( $result)) {
foreach ( $result as $row) {
echo 'ArtikelId:'. $row['id'] . '<br/>';
echo 'Ersteller:'. $row['createuser'] . '<br/>';
// etc
}
}
Markus