2016-11-05 6 views
0

Ich hatte den folgenden Code, der gut funktionierte, bis ich eine if Anweisung hinzugefügt habe, um die Schleife zu beschränken, um nur auf bestimmten Elementen im Array zu laufen. Ich bekomme jetzt nur eine leere Seite, die darauf hinweist, dass irgendwo in meinem Code ein Fehler auftaucht, seit ich die if-Anweisung hinzugefügt habe, aber ich kann nicht herausfinden, wo.Was ist falsch an meiner if-Anweisung?

Ich würde wirklich jede Hilfe bei der Lösung dieses Problems sowie Vorschläge, wie ich mich selbst hätte lösen können (Ich bin noch neu in PHP und nicht sicher, wie man diese Art von Problem effektiv debuggen).

Nb. Es gibt ein öffnendes <?php Etikett, das im folgenden Ausschnitt nicht gezeigt wird.

foreach ($portfolioProjects as $portfolio) { 
if ($portfolio['featureContent'] == "Yes") { 
    ?> 
    <div class="row featurette"> 
     <?php 
     //for each odd number, change the layout so it looks nice :) 
     if ($loopCount % 2 == 0) { 
      echo '<div class="col-md-7">'; 
     } else { 
      echo '<div class="col-md-7 col-md-push-5">'; 
     } 
     ?> 
     <h2 class="featurette-heading"><?php echo $portfolio[title]; ?> <span class="text-muted"><?php echo $portfolio[languages]; ?></span> 
      <?php 
      //Check array for newTag which will be added to show a tag to the user 
      if ($portfolio[newTag] == "Yes") { 
       echo '<span class="label label-success test pull-right"> New!</span>'; 
      } 
      ?></h2> 
     <p class="lead"><?php echo $portfolio[blurb]; ?></p> 
    </div><!--end of column1--> 
    <?php 
    if ($loopCount % 2 == 0) { 
     echo '<div class="col-md-5">'; 
    } else { 
     echo '<div class="col-md-5 col-md-pull-7">'; 
    } 
    ?> 
    <img class="featurette-image img-responsive center-block" data-src="holder.js/200x200/auto" alt="200x200" src="assetts/200x200.gif" data-holder-rendered="true"> 
    </div> 
    </div> 
    <?php 
    //if statement to stop divider being added if last item in array 
    $loopCount = $loopCount + 1; 
    if ($loopCount != $itemsCount) { 
     echo '<hr class="featurette-divider">'; 
    } 
} 

} ?>

Antwort

1

Der einfachste Weg, um herauszufinden, was das Problem ist, Webserver Protokolldatei zu überprüfen, oder schalten Sie error_reporting und display_errors in der php.ini-Datei.

Sind newTag und blurb Konstanten oder Schlüssel im $portfolio Array? Wenn es sich um Schlüssel handelt, sollten Sie Apostrophe verwenden.

if ($portfolio['newTag'] == "Yes") { 

und

<p class="lead"><?php echo $portfolio['blurb']; ?></p> 
0

Sie haben vergessen, Array-Schlüssel in Anführungszeichen

`$portfolio['title'] 
$portfolio['languages'] 
$portfolio['newTag'] 
$portfolio['blurb']` 
einzuwickeln
Verwandte Themen