[phpBB Debug] PHP Warning: in file [ROOT]/ext/tas2580/seourls/event/listener.php on line 213: Undefined array key "FORUM_NAME"
Sammelmappe für Redaxo - REDAXO Forum
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/
Benutzeravatar
Hooksieler
Beiträge: 80
Registriert: 24. Jul 2005, 10:33
Wohnort: Hooksiel Nordsee

Sammelmappe für Redaxo

14. Jan 2008, 19:34

Ich habe mal eine Frage an alle Redaxo Fans.
Hat sich schon mal jemand über einen sogenannten Merkzettel Gedanken gemacht? Ein Beispiel hier:

http://www.dtv-tin.de/

Diese TIN-Sammelmappe sammelt Artikel und generiert auf Wunsch ein PDF Dokument. Es wäre eine sinnvolle Ergänzung für Redaxo.
Vieleicht hat ja jemand eine Idee.

iceman-fx
Beiträge: 467
Registriert: 13. Feb 2007, 16:16
Wohnort: Sachsen
Kontaktdaten: Website

14. Jan 2008, 20:51

Prinzipiell keine schlechte Sache und auch umsetzbar.

Dazu müssten einfach die Artikel-IDs in einer Tabelle zwischengespeichert werden und könnten dann seitenweise als PDF erzeugt werden.

Benutzeravatar
Koala
Beiträge: 1612
Registriert: 3. Okt 2005, 13:20

14. Jan 2008, 21:31

iceman-fx hat geschrieben:Dazu müssten einfach die Artikel-IDs in einer Tabelle zwischengespeichert werden und könnten dann seitenweise als PDF erzeugt werden.
Bei dem genannten Link ist das mit der Session gelöst.
<?php print $Footer; ?>

Sven

Ich würde ja die Welt verändern,
doch der Quellcode ist mir zu absurd!


REX 5 :: Tricks und Tipps
REX 5 :: Modulesammlung

Wiki zu Redaxo 3 und 4 (!nur noch im Webarchiv!)

iceman-fx
Beiträge: 467
Registriert: 13. Feb 2007, 16:16
Wohnort: Sachsen
Kontaktdaten: Website

15. Jan 2008, 09:56

Auch ne Möglichkeit ;-))

Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

15. Jan 2008, 12:49

Meinst Du mit Merkzettel sowas wie das hier?
www.kohrsbuch.de
Siehe "Buchtipps" und dann "auf Bestellzettel notieren"

Falls ja, dann ist das supersimpel. Das könnte ich relativ rasch mal zusammenfassen.

Die PDF-Geschichte steht ja soieso auf einem anderen Blatt.

Grüße,
Peter.

Benutzeravatar
Oliver.Kreischer
Beiträge: 2508
Registriert: 17. Dez 2004, 00:03
Wohnort: Velbert - LA
Kontaktdaten: Website

15. Jan 2008, 13:12

Hi Peter,

das wäre ja schon der super super simpleshop...

Wär klasse wenn Du das bereitstellen würdest..

LG
Oliver
> Friends Of REDAXO Gemeinsame REDAXO-Entwicklung!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!

Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

15. Jan 2008, 14:56

Ok, hier die Bescheibung:

Der Link, um ein Produkt auf dem Merkzettel zuspeichern, kann per Modul hinzugefügt werden oder direkt ins Template gesetzt werden.
Dies hängt stark davon ab, wie die Präsentation der Produkte genau aussieht. Wenn es nur ein Produkt per Seite gibt, kann man auf die Werte des Artikels zugreifen.
da ich aber meistens mit mehreren Produkten pro Seite zu tun habe, hier die Variante mit dem manuellen Hinzufügen mittels eines Moduls, die sich anbietet, wenn man mehrere Produkte auf einer Seite listet.
Als eindeutige ID wird hier einfach die Slice-ID verwendet. Ansonten halt im Modul ein Feld für die ID vorsehen.

Code: Alles auswählen

<?php
echo '<a href="'.rex_getUrl($this->getValue(article_id),$REX["CUR_CLANG"],array('add'=>REX_SLICE_ID)).'">Produkt auf den Merkzettel legen</a>';
?>
Hier die Anzeige des Merkzettels, sobald ein Artikel gespeichert wurde (irgendwo im Template zu platzieren). Die Artikel-ID dort muss auf die Seite zeigen, wo dann der gesamte Merkzettel angezeigt wird.

Code: Alles auswählen

<?php
if (sizeof($_SESSION["shoppingcart"]) != 0){
 echo '
 <div id="order">
 <p>';
  echo (count($_SESSION["shoppingcart"]));
  if (count($_SESSION["shoppingcart"]) == 1) {
   echo ' Produkt';
  } else {
   echo ' Produkte';
  }
 echo ' auf Ihrem Merkzettel.<br />
 <a href="'.rex_getUrl(45,0).'">Merkzettel zeigen ...</a></p>
 </div>';
}
?>
Und hier der Code auf der Merkzettel-Seite. Achtung: Die Modultyp-ID muss angepasst werden an das Modul "Warenkorb-Link", siehe iben.

Code: Alles auswählen

<?php
if (sizeof($_SESSION["shoppingcart"]) != 0) {
 echo '<h3>Bisher auf dem Merkzettel:</h3>';

 $db_korb = "
 SELECT *
 FROM rex_article_slice
 WHERE modultyp_id = '8'";

 $prods = new rex_sql;
 $prods->setQuery($db_korb);

 for ($i=0;$i<$prods->getRows();$i++) {
  foreach ($_SESSION['shoppingcart'] as $pid => $id) {

   if ($pid == $prods->getValue("id")) {

     echo '
 <div class="merkzettel">
';

 echo '
 <h3>'.$prods->getValue("value1").'<br />
 <a href="'.rex_getUrl($prods->getValue("article_id")).'"><span>Mehr Information ...</span></a></h3>
<p><a href="'.rex_getUrl($this->getValue(article_id),$REX["CUR_CLANG"],array('add'=>$prods->getValue("id"))).'">Vom Merkzettel löschen</a></p>
  </div>';

 $products_mail .=  $prods->getValue("value1")."\n";  
 
  }
  }
  $prods->next();
 }
 echo '</div>';
 } else {
  echo 'Ihr Merkzettel ist leer.';
}

?>
Die gemerkten Artikel wurden hier in eine Variable $products_mail geschrieben und können nun zusätzlich per Formular verschickt werden oder anderweitig weiter verarbeitet werden.

Und last but not least hier der Code für die Session-ID, die für das Merken der Produkte zuständig ist (im Template ganz an den Anfang!):

Code: Alles auswählen

<?php
session_start();
$artid = rex_getUrl($this->getValue('article_id'), $REX['CUR_CLANG']);

if ((int)$_REQUEST['add'] != "0") {
 $_SESSION["shoppingcart"][(int)$_REQUEST['add']]["menge"] += 1;
 
 $artid = rex_getUrl($this->getValue('article_id'), $REX['CUR_CLANG']);
 header("Location: http://". $_SERVER['HTTP_HOST'] ."/".$artid);
 exit();
}

if ((int)$_REQUEST['remove'] != "0") {
 unset($_SESSION["shoppingcart"][(int)$_REQUEST['remove']]);
 $artid = rex_getUrl($this->getValue('article_id'), $REX['CUR_CLANG']);
 header("Location: http://". $_SERVER['HTTP_HOST'] ."/".$artid);
 exit();
}
?>
Ich hoffe, dass ich keinen Schreibfehler drinne habe, denn ich habe das nun aus mehreren Projekten zusammen geklaubt.

Grüße,
Peter.
Zuletzt geändert von Peter.Bickel am 16. Jan 2008, 15:10, insgesamt 1-mal geändert.

Benutzeravatar
Oliver.Kreischer
Beiträge: 2508
Registriert: 17. Dez 2004, 00:03
Wohnort: Velbert - LA
Kontaktdaten: Website

15. Jan 2008, 20:45

DANKE!

Oliver
> Friends Of REDAXO Gemeinsame REDAXO-Entwicklung!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!

Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

16. Jan 2008, 13:19

Oliver,
kannst Du mir bitte sagen, ob das so funktioniert, sobald Du es getestet hast?
Dann würde ich das so auch ins Wiki einstellen.

Danke,
Peter.

Benutzeravatar
Oliver.Kreischer
Beiträge: 2508
Registriert: 17. Dez 2004, 00:03
Wohnort: Velbert - LA
Kontaktdaten: Website

16. Jan 2008, 13:30

ok- Gerne! Aber vielleicht erst am Wochenende.

Grüße
Oliver
> Friends Of REDAXO Gemeinsame REDAXO-Entwicklung!
> REDAXO Agenturen. Eintragen erwünscht!
> Komm in den Slack Channel Es lohnt sich!

Joachim.Dörr
Beiträge: 1403
Registriert: 7. Apr 2006, 01:49
Kontaktdaten: ICQ Website

16. Jan 2008, 14:03

Und wie machst du das mit dem Versenden?

lg
Joachim

Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

16. Jan 2008, 15:12

Hab ein kleines Update gemacht:
Die gemerkten Artikel werden hier in eine Variable $products_mail geschrieben und können nun zusätzlich per Formular verschickt werden oder anderweitig weiter verarbeitet werden.

Da immer mal wieder die Frage nach einem Merkzettel aufkam, hab ich das alles jetzt mal im Wiki zusammengefasst und werde das ggf. dort weiter pflegen:
http://wiki.redaxo.de/index.php?n=R3.Merkzettel

Grüße,
Peter.

Benutzeravatar
nuxx
Beiträge: 164
Registriert: 16. Dez 2005, 18:45
Wohnort: Kaputtgart 21

14. Aug 2008, 18:19

Hallo
Die Merkzettel Idee ist super :)
Ich hab das auch gleich mal ausprobiert, wie das im Wiki beschrieben ist.
Das hinzufügen von Artikeln klappt.
Der Link zum Warenkorb wird auch angezeigt, wenn was im Warenkorb ist.
Allerdings stellt sich bei mir das Problem, dass der Warenkorb keine gemerkten Artikel anzeigt.

Ich habe Rex 4.1
Hat jemand eine Idee ?
http://www4.waerters.com/de/interactive/shop/cds.html
(Die Seite ist erst im Aufbau.... also nicht wundern wenns komisch aussieht)

cwenet
Beiträge: 380
Registriert: 16. Feb 2006, 10:13
Wohnort: Lake Constance

15. Aug 2008, 20:01

Hast Du hier Deine Modul ID verwendet?

$db_korb = "
SELECT *
FROM rex_article_slice
WHERE modultyp_id = 'meineModulId'";

Gruss
Christoph
Zuletzt geändert von cwenet am 15. Aug 2008, 20:33, insgesamt 1-mal geändert.

cwenet
Beiträge: 380
Registriert: 16. Feb 2006, 10:13
Wohnort: Lake Constance

15. Aug 2008, 20:32

Hallo,

ich würde gerne den Merkzettel dahingehend erweitern, dass die Artikel nicht nur während der Session gespeichert werden, sondern beim nächsten Besuch immer noch vorhanden sind.

An welcher Stelle muss ich wie eingreifen?

Über Hilfe freue ich mich.

Gruss
Christoph

Benutzeravatar
nuxx
Beiträge: 164
Registriert: 16. Dez 2005, 18:45
Wohnort: Kaputtgart 21

16. Aug 2008, 06:07

cwenet hat geschrieben:Hast Du hier Deine Modul ID verwendet?

$db_korb = "
SELECT *
FROM rex_article_slice
WHERE modultyp_id = 'meineModulId'";
Ja das habe ich.

Benutzeravatar
Peter.Bickel
Beiträge: 1856
Registriert: 25. Jan 2005, 21:17
Wohnort: Schleswig-Holstein
Kontaktdaten: Website

29. Aug 2008, 16:44

Hi Christoph,

dann musst Du die Werte als Cookie speichern. Schau Dir einfach mal das Cookie-Management in PHP an.

Grüße,
Peter.

Zurück zu „Allgemeines [R4]“