Du befindest Dich im Archiv vom ABAKUS Online Marketing Forum. Hier kannst Du Dich für das Forum mit den aktuellen Beiträgen registrieren.

Wieder mal ein PHP blackout bei mir^^

Ajax, Hijax, Microformats, RDF, Markup, HTML, PHP, CSS, MySQL, htaccess, robots.txt, CGI, Java, Javascript usw.
catcat
PostRank 10
PostRank 10
Beiträge: 10292
Registriert: 02.08.2006, 13:21
Wohnort: Litauen

Beitrag von catcat » 12.11.2009, 20:38

Ich hab da in diesem Teil nen Fehler und find es nicht:


array_multisort($lens, SORT_NUMERIC, $childs );
foreach($childs as $key =>$child ){
echo
'<li-first"; } echo '"><a href="'.$child['url'].'" title="'.$child['name'].'">'.$child['name'].'</a></li>';
}

Ich habs mal farblich so wie in DW gemacht. Es kann nur in der Zeile, die mit " echo '<li-first";" beginnt sein.

Die Fehlermeldung lautet: Parse error: syntax error, unexpected T_CONSTANT_ENCAPSED_STRING, expecting ',' or ';' in blabla

Aber ich komm einfach nicht drauf :(
Jemand ne Idee?

Anzeige von ABAKUS

von Anzeige von ABAKUS »

SEO Consulting bei ABAKUS Internet Marketing
Erfahrung seit 2002
  • persönliche Betreuung
  • individuelle Beratung
  • kompetente Umsetzung

Jetzt anfragen: 0511 / 300325-0.


007
PostRank 5
PostRank 5
Beiträge: 332
Registriert: 07.12.2008, 21:52

Beitrag von 007 » 12.11.2009, 20:42

echo '<li-first";

' != "

;)

Anonymous

Beitrag von Anonymous » 12.11.2009, 20:43

hmm... ich würde sagen du wirfst da ' und " wild durcheinander und hast dich dabei verhaddert...

kommste gerade aus der Stammkneipe?

Texxter
PostRank 5
PostRank 5
Beiträge: 256
Registriert: 03.08.2008, 11:40

Beitrag von Texxter » 12.11.2009, 20:44

Probier mal so:

Code: Alles auswählen

echo "<li><a href='".$child&#91;'url'&#93;."' title='".$child&#91;'name'&#93;."'>".$child&#91;'name'&#93;."</a></li>";

catcat
PostRank 10
PostRank 10
Beiträge: 10292
Registriert: 02.08.2006, 13:21
Wohnort: Litauen

Beitrag von catcat » 12.11.2009, 20:55

Öhm... dakommt dasselbe raus Texxter^^

@net(t)worker): jep.

Also hier mal der gesamte Kot:

Code: Alles auswählen

<div>
<h2>Shop Categories</h2>
</div>
<div>
<table cellspacing="0" id="cat-list">
<?php
$allCats=$this->getStoreCategories&#40;&#41;;
$i=0;
foreach &#40;$allCats as $category&#41;&#123;
 if&#40;$i==30&#41;&#123;
 break;
 &#125;
 if &#40;!$category->getIsActive&#40;&#41;&#41;&#123;
 continue;
 &#125;
 $children = $category->getChildren&#40;&#41;;
 $childrenCount = $children->count&#40;&#41;;
 $catName=$category->getName&#40;&#41;;

 if&#40;$i++%3==0&#41;&#123;
 echo '<tr>';
 &#125;
 echo '<td><div style="background&#58;url&#40;'.$this->getSkinUrl&#40;'images/'.$category->getId&#40;&#41;.'.jpg'&#41;.'&#41; no-repeat bottom center;">
 <ul><a href="'.$this->getCategoryUrl&#40;$category&#41;.'" title="'.$catName.'">'.$catName.'</a><br>';
 $j=0;
 if &#40;$children && $childrenCount&#41; &#123;
 $childs=array&#40;&#41;;
 $lens=array&#40;&#41;;
 foreach &#40;$children as $child&#41; &#123;
 if &#40;$child->getIsActive&#40;&#41;&#41; &#123;
 $childName=trim&#40;preg_replace&#40;"/^$catName */",'',$child->getName&#40;&#41;&#41;&#41;;
 preg_match_all&#40;'/m/',$childName,$letters&#41;;
 $count=count&#40;$letters&#91;0&#93;&#41;;
 $strlen=strlen&#40;$childName&#41;+$count;
 if&#40;$strlen>12 && substr&#40;$catName,0,4&#41;!="Rept"&#41;&#123;
 continue;
 &#125;
 $childs&#91;$j&#93;=array&#40;&#41;;
 if&#40;$childName=='Supplements & Medications'&#41;&#123;
 $childName='Supplements';
 &#125;
 $childs&#91;$j&#93;&#91;'name'&#93;=$childName;
 $lens&#91;$j&#93;=$strlen;
 $childs&#91;$j&#93;&#91;'url'&#93;=$this->getCategoryUrl&#40;$child&#41;;
 $j++;
 if&#40;$j==5&#41;&#123;
 break;
 &#125;
 &#125;
 &#125;
 array_multisort&#40;$lens, SORT_NUMERIC, $childs&#41;;
 foreach&#40;$childs as $key=>$child&#41;&#123;
 echo '<li-first"; &#125; echo '"><a href="'.$child&#91;'url'&#93;.'" title="'.$child&#91;'name'&#93;.'">'.$child&#91;'name'&#93;.'</a></li>'; //und hier steckt der Hund drin
 &#125;
 &#125;
 echo '';
 if&#40;$i%3==0 || $i==6&#41;&#123;
 echo '</tr>';
 &#125;
&#125;
?>
</table>
</div><br />
Das sollte mir die Kategorien aus der DB ziehen und mir fein säuberlich, wie bei Preussens, auf der Startseite anzeigen in 3-er-Reihen.
Zuletzt geändert von catcat am 12.11.2009, 21:07, insgesamt 1-mal geändert.

Anonymous

Beitrag von Anonymous » 12.11.2009, 21:07

hast du die Zeile von Texxter nu ganz rüberkopiert, also deine vorher gelöscht, oder haste versucht deine zeile der von texxter anzupassen?

catcat
PostRank 10
PostRank 10
Beiträge: 10292
Registriert: 02.08.2006, 13:21
Wohnort: Litauen

Beitrag von catcat » 12.11.2009, 21:08

*narf.
Ich habe meine gelöscht und die von texxter reinkopiert...
STRG-C und STRG-V schaffe ich grade noch^^

DanielS
PostRank 9
PostRank 9
Beiträge: 1179
Registriert: 03.08.2008, 08:45

Beitrag von DanielS » 12.11.2009, 21:15

catcat hat geschrieben:...Es kann nur in der Zeile, die mit " echo '<li-first";" beginnt sein...
Das klingt irgendwie nur nach Vermutung. Welche Zeile steht denn genau in der Fehlermeldung?

Anonymous

Beitrag von Anonymous » 12.11.2009, 21:16

hast du den Code denn nach der Änderung der Zeile auf dein Livesystem kopiert oder wieder nur mal aufs testsystem und dann beim livesystem nachgeschaut?

Anonymous

Beitrag von Anonymous » 12.11.2009, 21:22

DanielS hat geschrieben:Das klingt irgendwie nur nach Vermutung. Welche Zeile steht denn genau in der Fehlermeldung?
naja... in der Zeile ist auf jeden Fall etwas falsch.... da werden ' und " wild durcheinander gewürfelt, und was das } dort zu suchen hat frage ich mich auch... und es gibt keinen "<li-first" HTML Tag.... aber klar, ggf. kann der Fehler, der diese Fehlermeldung verursacht auch in einer anderen Zeile liegen

catcat
PostRank 10
PostRank 10
Beiträge: 10292
Registriert: 02.08.2006, 13:21
Wohnort: Litauen

Beitrag von catcat » 12.11.2009, 21:22

Es gibt Tage, da hasse ich Dich echt!
Ich geh runter innen "Flotten Otto" und guck morgen wieder nach "qualifizierten Kommentaren" *hehe

Anonymous

Beitrag von Anonymous » 12.11.2009, 21:34

catcat hat geschrieben:Ich geh runter innen "Flotten Otto" und guck morgen wieder nach "qualifizierten Kommentaren" *hehe
Hmm... soetwas ähnliches wollte ich dir eigentlich nach dem Eingangsposting schon empfehlen... so sehr wie die eine Zeile verhunzt is, fehlt dir momentan wohl die nötige Konzentration fürs scripten... :-?

007
PostRank 5
PostRank 5
Beiträge: 332
Registriert: 07.12.2008, 21:52

Beitrag von 007 » 12.11.2009, 21:54

Ich poste auch gerne nochmal, vielleicht sieht ja jetzt Jemand den Fehler:

echo '<li-first";

DanielS
PostRank 9
PostRank 9
Beiträge: 1179
Registriert: 03.08.2008, 08:45

Beitrag von DanielS » 12.11.2009, 21:56

007 hat geschrieben:Ich poste auch gerne nochmal, vielleicht sieht ja jetzt Jemand den Fehler:

echo '<li-first";
Das hat unsere Doppelkatze aber durch den Code von Texxter behoben ;)

Anonymous

Beitrag von Anonymous » 12.11.2009, 21:56

007 hat geschrieben:Ich poste auch gerne nochmal, vielleicht sieht ja jetzt Jemand den Fehler:

echo '<li-first";
ach... und der wäre mit dieser Zeile von Texxter nicht behoben? :roll:

Antworten