Autor just59
Datum 16.05.2008 19:30
Beiträge: Hallo,

ich versuche gerade mit Hilfe des Moduls HowTo ein neues zu erstellen.
Das neue Modul hat dann den Namen Affiliate. Hier will ich dann solche Angebote anzeigen und bewerten lassen.
Habe bereits alles fleißig umbenannt. Das neue Modul kann auch erfolgreich installiert werden. Jedoch soll das nun etwas anders aussehen. So möchte ich in der Tabelle "Populärste und Neueste" das Bild anzeigen lassen.

Ich vermute, dass diese Datei dafür zuständig ist:
modulesaffiliatepluginmiddleboxpopularaffiliatemain.php
Original:
moduleshowtopluginmiddleboxpopularhowtomain.php

Ab Zeile 71
if ($result !== false) {
$counter = $result->RecordCount ();
$data = array ();
popularaffiliate_get_data ($result, $box_array_dat, $data);
if ($box_array_dat['box_options']['use_tpl'] == '') {
$boxstuff .= '<ul>';
foreach ($data as $val) {
$boxstuff .= '<li>' . $val['link'];
$boxstuff .= '</li>';
}
$themax = $limit- $counter;
for ($i = 0; $i </li>';
}
$boxstuff .= '</ul>';
} else {
$pos = 0;
$dcol1 = '2';
$dcol2 = '1';
$a = 0;
$dcolor = 1;
$opnliste = array ();
foreach ($data as $val) {
$opnliste[$pos]['topic'] = $val['link'];
$opnliste[$pos]['case'] = 'nosubtopic';
$opnliste[$pos]['alternator'] = $dcolor;
$opnliste[$pos]['image'] = '';

$pos++;
$a = ($dcolor == $dcol1?1 : 0);

Was muss ich eintragen, damit das Bild, was im Cache Verzeichnis liegt, in der Tabelle vor dem Link angezeigt wird?


Es scheint auch ein Fehler in der function_center.php in Zeile 598 zu geben. Dort steht:
... '/modules/affiliate/images/affiliate/' . $cover . '" align="right[/img]';
Im Original steht dort:
... '/modules/howto/images/howto/' . $cover . '" align="right[/img]';

Also hier wird nicht das Cache Verzeichnis genommen. Wie muss der korrekte Eintrag lauten?

Wenn dann Alles funktioniert, werde ich es zur weiteren Verwendung zur Verfügung stellen.

[ Diese Nachricht wurde bearbeitet von: just59 am 16.05.2008 19:34 (Originaldatum 16.05.2008 19:30) ]

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)

[ Diese Nachricht wurde bearbeitet von: just59 am 16.05.2008 19:36 (Originaldatum 16.05.2008 19:30) ]


Autor stefan
Datum 17.05.2008 10:53
Beiträge:


Es scheint auch ein Fehler in der function_center.php in Zeile 598 zu geben.



stimmt das sollte wohl

$boxtxt .= '<img src="' . $opnConfig['datasave']['howto_images']['url'] . '/' . $cover . '" align="right" class="imgtag" alt="" />';

sein.



Erst nachlesen, dann nachdenken, dann nachfragen... http://www.catb.org/~esr/faqs/smart-questions.html openPHPnuke Developer


Autor stefan
Datum 17.05.2008 11:01
Beiträge: das kommt in 829 noch einmal


Autor stefan
Datum 17.05.2008 11:11
Beiträge: Zu deiner anderen Frage

zunächst die Bemerkung dort wird ggf. mit tpls gearbeitet. die frage wäre also erstmal wie sauber das sein soll. ich zeige mal den weg der schneller ist und nicht so sauber (da das bild dann nicht im tpl gezeichnet wird) musst sagen ob das dann reich

function popularhowto_get_data ($result, $box_array_dat, &$data) {

     global $opnConfig;

     $i = 0;
     while (! $result->EOF) {
          $id = $result->fields['id'];
          $howto = $result->fields['title'];
          if ($howto == '') {
               $howto = '-';
          }
          $title = $howto;
          $opnConfig['cleantext']->opn_shortentext ($howto, $box_array_dat['box_options']['strlength']);
          $data[$i]['link'] = '<a href="' . encodeurl (array ($opnConfig['opn_url'] . '/modules/howto/index.php',
                                                       'op' => 'showcontent',
                                                       'id' => $id) ) . '" title="' . $title . '">' . $howto . '</a>';
          $i++;
          $result->MoveNext ();
     }

}

dort wird der link gebaut

entscheidend ...

$data[$i]['link'] = '<a href="' . encodeurl (array ($opnConfig['opn_url'] . '/modules/howto/index.php',
                                                       'op' => 'showcontent',
                                                       'id' => $id) ) . '" title="' . $title . '">' . $howto . '</a>';

wert ...

          $howto = $result->fields['title'];

das cover musst dir jetzt holen ...

          $cover = $result->fields['cover'];

und irgendwie dem link hinzufügen ...

$data[$i]['link'] = $cover . '<a href="' ......

dann wird das mit ausgegeben

aber ... cover ist im result noch noch nicht drin das passiert an der stelle

     $result = $mf->GetItemLimit (array ('id',
                         'title',
                         'wdate'),
                         array ($order . ' DESC'),
          $limit);


das must du auch noch erweitern damit cover drin ist

     $result = $mf->GetItemLimit (array ('id',
                         'title',
                         'cover',
                         'wdate'),
                         array ($order . ' DESC'),
          $limit);

versuch mal ob dir das reicht?


Autor just59
Datum 17.05.2008 19:00
Beiträge: Hallo Stefan,

danke für Deine schnelle Antwort. Da werde ich mich morgen mal ran setzen, wenn die Sonne weint.

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)


Autor just59
Datum 18.05.2008 17:06
Beiträge: Nach langen Experimentieren, habe ich es soweit hin bekommen.

sehen kannst Du das hier

Ich habe die Änderungen in der function_center_box.php durchgeführt:

if ( ($result_pop !== false) && ($result_rec !== false) ) {
for ($x = 0; $xGetRowAssoc ('0');
$table->AddOpenRow ();
if ($row['id'] != '') {
$table->AddDataCol ($y . ') <a href="' . encodeurl (array ($opnConfig['opn_url'] . '/modules/affiliate/index.php',
'op' => 'showcontent',
'id' => $row['id']) ) . ' "><img src="' . $opnConfig['datasave']['affiliate_images']['url'] . '/'. $row ['cover'].'"> ' . $row['title']. '</a>');
} else {
$table->AddDataCol (' ');
}
$row = $result_rec->GetRowAssoc ('0');
if ($row['id'] != '') {
$table->AddDataCol ($y . ') <a href="' . encodeurl (array ($opnConfig['opn_url'] . '/modules/affiliate/index.php',
'op' => 'showcontent',
'id' => $row['id']) ) . ' "><img src="' . $opnConfig['datasave']['affiliate_images']['url'] . '/'. $row ['cover'].'"> ' . $row['title']. '</a>');


Ansonsten nur in der Arrayaufzählung in den von Dir genannten Strings.

Würde gleich noch den Fehler mit der Kategorie bereinigen. Was muss ich da wo ändern.
Wo soll ich das Modul dann hinsenden? Eventuell haben ja auch Andere daran Interesse?

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)


Autor stefan
Datum 20.05.2008 07:27
Beiträge: just59 schrieb am 18.05.2008 um 17:06:41 Uhr folgendes:


Wo soll ich das Modul dann hinsenden? Eventuell haben ja auch Andere daran Interesse?



Frage dabei ist; willst du es weiter pflegen? Denn es gibt ja mehrere Möglichkeiten wie das gehen kann.


Autor just59
Datum 20.05.2008 08:00
Beiträge: Ich kann das auf jedem Fall weiter pflegen. Auch wenn ich da noch Eure Unterstützung benötige. Ist leider nicht so einfach sich da rein zu denken. Man könnte aber auch alternativ das Howto Modul universeller gestallten. So das man es für verschiedene Zwecke einsetzen kann. Der angezeigte Name "HOWTO" müsste dann durch den Wunscheitrag automatisch ersetz werden können. Die hat aber den Nachteil, das man es dann nur für einen Zweck einsetzen kann. Nachteil der Duplizierung, wie ich es gemacht habe, ist, man muss dann mehrere Module bei Änderungen anpassen. Vielleicht fällt Dir noch eine andere Lösung ein. Ein Vatermodul und darauf basierende Söhne. Mann kann beim Vatermodul im Adminbereich ein neues Sohnmodul erstellen. Admin gibt Namen an, wählt benötigte Felder und Aussehen aus. Danach werden automatisch das Modul und Tabellen erstellt. So meine Idee.
Hilfreich für mich als Neuling, ist eine Kommentierung des Quellcodes.

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)


Autor just59
Datum 05.11.2008 22:49
Beiträge: So nach langer Zeit wieder mal ein par Zeilen.
Habe mal an den Modul etwas rum gebastelt. Meine ersten PHP Versuche...
Wollte dies Modul nutzen, um Affiliate Werbung dort anzuzeigen. Möchte also das Portal von Werbung so weit es geht frei halten. Damit Besucher mich trotzdem unterstützen können, habe ich eben dieses Modul verwendet.
Als erstes habe ich es erst einmal in Affiliate umbenannt. Das Problem mit dem Bild ist gelöst. Auch die Spalten sind etwas geändert.
Soweit erst einmal die jetzige Fassung.
Nun möchte ich jedoch ein Klickvergütung einbauen. Ähnlich wie bei den Weblinks. Habe dazu auch bereits eine entsprechende Tabelle opn_affiliate_visit angelegt. Auch die php Datei visit.php gibt es im Modulverzeichnis. Habe diese Umgeschrieben, allerdings noch nicht testen können. Jedoch habe ich jetzt keinen Plan, wo ich was eintragen muss, damit beim klicken auf den Link auch der Zähler hochgesetzt wird. Auch eine teilweise Weitergabe der Provision würde ich gern mit integrieren.
Hier mal der Link


JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)


Autor migaja
Datum 06.11.2008 08:50
Beiträge: Hallo Just,

warum benutzt Du nicht das banner-Modul?
Da ist doch sowas schon "an Board".

*migaja*


Autor just59
Datum 06.11.2008 09:29
Beiträge: Das Bannermodul ist für diesen Zweck nicht geeignet. Ich will ja auch erreichen, dass Besucher die Angebote bewerten können und zielgerichtet danach suchen können. Zurzeit habe ich solche Angebote als Weblinks. Diese kommen da aber wieder raus.
Banner wird es jedoch zusätzlich geben, will dies nur dezent einsetzen. Wenn jemand ein Thema als Partner betreut, bekommt er in diesem Thema einen Bannerwerbeplatz. So kann er sich ein paar Euro dazu verdienen. Soweit zu meinem Plan.

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)


Autor migaja
Datum 06.11.2008 09:58
Beiträge: Na dann, ran an die Arbeit

Ob von a nach b oder von b nach a nimmt sich wohl nicht viel: Deinem Ausgangs-Modul fehlt die Funktionalität, die das andere hat und umgekehrt

Schaue Dir das Banner Modul bzw. das WebLink Modul doch mal genauer an, vielleicht findest Du dort die Antwort auf Dein Problem. Irgendwo muß ja die "visit" aufgerufen werden etc. - dann das Pendant im angepassten Modul suchen, Code hinein und schwups, alles prima


Autor just59
Datum 29.11.2008 16:01
Beiträge: Die Aflliates stammen von Affilinet. Dort kann ich eine SubID verwenden. Also wenn Benutzer MAIER sich angemeldet hat, kann ich den Klick seiner SubID zuordnen. Dazu muss ich jedoch den Link anpassen.



<a HREF="http://partners.webmasterplan.com/click.asp?ref=XXX&site=xxxx&type=b1&bnb=1&subid=MAIER" TARGET="_top">
<img SRC="http://banners.webmasterplan.com/view.asp?site=2229&ref=651&b=1" BORDER="0" ALT="nur-kleine-preise.de" WIDTH="468" HEIGHT="60">



Die SubID ist hier fest. Diese muss ich jedoch variabel gestallten. Würde also als subid gern den Usernamen oder ID des angemeldeten Users verwenden. Wie kann ich das realisieren?

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)


Autor just59
Datum 06.12.2008 18:09
Beiträge: Habe mich jetzt ein wenig versucht. Jedoch wird der Link noch nicht richtig angezeigt. Was ist da noch falsch?
Zuerst lese ich mal den User aus...
<?php
global $opnConfig;

if ($opnConfig['permission']->IsUser () ) {

$userinfo = $opnConfig['permission']->GetUserinfo ();
$name = $userinfo['name'];
$uname = $userinfo['uname'];} else {


$alink= 'http://partners.webmasterplan.com/click.asp?ref=123456&subid='.$uname.'&site=1977&type=b48&bnb=48';

echo "<a href='.$alink.' target='_blank'> <img src='http://banners.webmasterplan.com/view.asp?ref=123456&site=1977&b=48' border='0' alt='Testseite' width='120' height='60' /></a>";
}
?>


Der String wird zwar richtig zusammen gesetzt, jedoch beim Linkaufruf steht noch meine Seite davor.

http://www.city.just-info.de/index.php/opnparams/.http://partners.webmasterplan.com/click.asp?ref=123456&subid=just&site=1977&type=b48&bnb=48.

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)


Autor just59
Datum 06.12.2008 18:55
Beiträge: Habs...

die Gänsefüßchen vergessen. Jetzt funzt es... zumindest in einer php Box.

Kann man in der Box php Code schreiben? Der wird jedenfalls bei mir nicht angenommen.


JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)

[ Diese Nachricht wurde bearbeitet von: just59 am 06.12.2008 19:03 (Originaldatum 06.12.2008 18:55) ]


Autor just59
Datum 13.12.2008 20:30
Beiträge: Leider habe ich es bis jetzt noch nicht geschafft einen Linkaufruf mit Parameterübergabe zu erstellen. Gibt es eine Möglichkeit im Linkaufruf als Parameter subid= den uname aus der GetUserinfo zu übergeben?

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)


Autor just59
Datum 14.12.2008 09:31
Beiträge: Ich habe die function_center.php im Bereich function affiliate_showcontent angeändert. Jetzt wird hinter den Link automatisch die subid geschrieben.
Ob es funktioniert, sehe ich dann morgen.

JUSt
just-info / Mein Gartenverein Portal für Gartenfreunde...
Suse 10.1, PHP 5.2.10 und MySQL 5.0.67.,Administration 2.5.1 [Iphigenie] (Revision 4533)




Diese Seite drucken
Diese Seite schließen

Dieser Artikel kommt von: OpenPHPNuke - das Open Source CMS

http://www.openphpnuke.info/