ConPresso4 Community

Fragen, Antworten, Diskussionen rund um das Content Management System ConPresso

 
Titel im Detaillink
Gehe zu Seite Zurück  1, 2, 3, 4  Weiter
 
Neue Antwort erstellen    ConPresso4 Community Foren-Übersicht -> Implementierung/Anpassung ConPresso 3.x
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 17.02.2008 23:42    Titel: Antworten mit Zitat

Habe den obengennannten Code in die i_detail.php eingebaut.

Daraufhin erschien eine leere News-Seite mit "Es wurde kein Artikel gefunden!".
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Tor3
ConPresso-User


Anmeldungsdatum: 11.12.2006
Beiträge: 82

BeitragVerfasst am: 17.02.2008 23:47    Titel: Antworten mit Zitat

Wie hast Du ihn eingebaut???

Ich beziehe mich mal auf die von Dir genannte Ausgangssitaution, die so lautete:

MarkusR hat Folgendes geschrieben:
Hier der Code

suche
Code:
if (!defined('CPO')) exit;


danach einfügen

Code:
if (!isset($_REQUEST['nr']) && isset($_REQUEST['title'])) {
   $query = "SELECT article_nr "
         ."FROM ".CPO_NEWS." "
         ."WHERE titel='".$_REQUEST['title']."' "
         ."AND rubric_id=".$cpoRubricId." AND artikel_archiv=0";
   DEBUG(2, $query, __FILE__, __LINE__);   
   $db = new DB;
   $db->query($query);
   $db->next_record();
   $_REQUEST['nr'] = $db->v('article_nr');
   $_GET['nr'] = $db->v('article_nr');
}

Das müsste jetzt bei Dir so lauten:

suche
Code:
if (!defined('CPO')) exit;


danach einfügen

Code:
if (!isset($_REQUEST['nr']) && isset($_REQUEST['title'])) {
   $query = "SELECT nr FROM cpo_news WHERE titel='".$_REQUEST['titel']."' AND artikel_archiv=0 AND kategorie='news'";
   DEBUG(2, $query, __FILE__, __LINE__);   
   $db = new DB;
   $db->query($query);
   $db->next_record();
   $_REQUEST['nr'] = $db->v('nr');
   $_GET['nr'] = $db->v('nr');
}
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 17.02.2008 23:53    Titel: Antworten mit Zitat

Und genau dies habe ich gemacht. Siehe Anhang:




download_www2ftp_26874.zip - 1.83 KB
599 mal

Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Tor3
ConPresso-User


Anmeldungsdatum: 11.12.2006
Beiträge: 82

BeitragVerfasst am: 18.02.2008 00:02    Titel: Antworten mit Zitat

Ändere mal title in titel...

ändere
$_REQUEST['nr'] = $db->v('nr');
$_GET['nr'] = $db->v('nr');
in
$nr = $db->v('nr');

und entferne mal diese komische Zeile nach // Statistics [END] ...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 18.02.2008 00:19    Titel: Antworten mit Zitat

Klappt. Danke!

Was ist der Grund für die % und die 20 Zeichen zwischen den Wörtern.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Tor3
ConPresso-User


Anmeldungsdatum: 11.12.2006
Beiträge: 82

BeitragVerfasst am: 18.02.2008 00:22    Titel: Antworten mit Zitat

So sehen Leerschritte in URLs aus.

Und bitte lies Dir diesen Thread durch und prüfe mal, wie lange es jeweils gedauert hat, nachdem Du eine Datei angehängt hast, bis das Problem gelöst war... dann überlege ob es nicht sinnvoll ist ohne Nachfragen Deine Dateien anzuhängen...
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 19.02.2008 14:09    Titel: Antworten mit Zitat

Danke nochmal für die Hinweise.

Nur noch mal eine Frage. Bisslang hatte ich auf den Detailseiten im title-tag die Überschrift (http://community.conpresso.de/viewtopic.php?t=2399&lighter=%DCberschrift+title) eingebunden.

Warum verschwindet dieser bei Detail-Seiten, die den Titel in der Endung haben?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 7059

BeitragVerfasst am: 19.02.2008 21:19    Titel: Antworten mit Zitat

Dani1978 hat Folgendes geschrieben:
Warum verschwindet dieser bei Detail-Seiten, die den Titel in der Endung haben?

Ist das wirklich die Frage, die Du jetzt stellst?

Dann muß ich folgendermaßen antworten:
der verwendete Code
Code:
if ($_GET['nr']) {
$query_title = "SELECT titel FROM ".$dbPrefix."_news WHERE nr=".$_GET['nr'];
DEBUG(2, $query_title, __FILE__, __LINE__);
$db_title = new DB;
$db_title->query($query_title);
$db_title->next_record();
$Artikel_header = $db_title->v('titel');
}

prüft ja, ob in der URL der Parameter nr drin ist. Isser nicht drin, wird der Code nicht ausgeführt (und könnte auch nicht ausgeführt werden)

Hätte man stattdessen gefragt, was man tun kann, damit auch jetzt noch der Titel angezeigt wird, dann hätte man da eben noch eine entsprechende Codezeile hinzufügen müssen, die folgendes macht:
Wenn die URL den Parameter titel enthält, dann soll $Artikel_header gleich dessen Wert sein.

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 20.02.2008 20:46    Titel: Antworten mit Zitat

Ok, damit kenne ich jetzt den Grund. Der Titel der News im title ist an die Nummer oder ID gekoppelt.

Und ich muss nun einen request machen, der nr = titel setzt?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 7059

BeitragVerfasst am: 20.02.2008 21:20    Titel: Antworten mit Zitat

Zitat:
Und ich muss nun einen request machen, der nr = titel setzt?

Nein. Ist Dir schon mal aufgefallen, daß nr eine Zahl und titel ein Text ist? Wie sollte man sowas gleichsetzen können? Kannst Du das? 23 = Schuhcreme oder was?

Du mußt folgendes machen:
Eine PHP-Zeile, die folgendes macht
Zitat:
Wenn die URL den Parameter titel enthält, dann soll $Artikel_header gleich dessen Wert sein.

In PHP sieht das so aus:
Code:
if ($_GET['titel']) $Artikel_header = $_GET['titel'];

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 21.02.2008 18:37    Titel: Antworten mit Zitat

Vielen Dank für den Hinweis.

So muss der Code schlussendlich aussehen:

if ($_GET['nr']) {
$query_title = "SELECT titel FROM ".$dbPrefix."_news WHERE nr=".$_GET['nr'];
DEBUG(2, $query_title, __FILE__, __LINE__);
$db_title = new DB;
$db_title->query($query_title);
$db_title->next_record();
$Artikel_header = $db_title->v('titel');
}
if ($_GET['titel']) $Artikel_header = $_GET['titel'];
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 22.02.2008 12:40    Titel: Antworten mit Zitat

Habe mittels htaccess nun folgende Endung : cpo/kategorie/titel.html

Bisslang habe ich aber bei google damit noch keine Trefferquote.
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 22.02.2008 12:48    Titel: Antworten mit Zitat

Mmh kann jemand mit folgendem Codeschnipsel etwas anfangen.

$url = str_replace ( array ( ' '), array ( '-'), $url );

Könnte ich so den Linktitel der News mittels Bindestrichen generieren?
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
MarkusR
Handbuchversteher


Anmeldungsdatum: 01.01.1970
Beiträge: 7059

BeitragVerfasst am: 22.02.2008 12:52    Titel: Antworten mit Zitat

Zitat:
Habe mittels htaccess nun folgende Endung : cpo/kategorie/titel.html

Bisslang habe ich aber bei google damit noch keine Trefferquote.

Du hast das seit gestern drin und erwartest heute schon Quoten dafür?
Herzlichen Glückwunsch zu Deinem Optimismus Very Happy

Am Rande:
Du wirst es nicht ändern können oder wollen, aber mit dem zusätzlichen /content/conpresso in jeder URL machst Du Deine Seiten unnötig schlecht.
Und:
Leider sind die Seiten durch Deine htacess nicht aufrufbar, zumindest die mit Umlauten. Merke: Umlaute vor dem ? in der URL sind tabu, dahinter könenn soviele vorkommen wie Du willst. Sprich: in cpo/kategorie/titel.html dürfen keine Umlaute vorkommen.
Zitat:
Mmh kann jemand mit folgendem Codeschnipsel etwas anfangen.

$url = str_replace ( array ( ' '), array ( '-'), $url );

Könnte ich so den Linktitel der News mittels Bindestrichen generieren?

Sicher kannst Du das.

_________________
Ciao Markus
ConPresso-Module
ConPresso und PHP 7
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen
Dani1978
ConPresso-Checker


Anmeldungsdatum: 15.12.2005
Beiträge: 217

BeitragVerfasst am: 22.02.2008 13:08    Titel: Antworten mit Zitat

Mmh, das mit den Umlauten wusste ich nicht. Wo steht das?

Ich habe google schon mal getestet. Nur 2 Stunden nach der Veröffentlichung war das Ergebnis online zu suchen!
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neue Antwort erstellen    ConPresso4 Community Foren-Übersicht -> Implementierung/Anpassung ConPresso 3.x Alle Zeiten sind GMT + 2 Stunden
Gehe zu Seite Zurück  1, 2, 3, 4  Weiter
Seite 3 von 4

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen