Jump to content
  • Checkout
  • Login
  • Get in touch

osCommerce

The e-commerce.

reviews listing text


magnusj

Recommended Posts

Posted

Hi, I hope someone can help me with this "simple"? problem.

 

When viewing shop/reviews.php, the reviews are listed in a column. But the message text ($reviews['reviews_text']) is shown with no linebreaks, just a long line of words.

When clicking to show a single full review - on shop/product_reviews_info.php - linebreaks are included and the text looks the way it should.

 

So... I would like the linebreaks to be included in the reviews listing aswell. Can this be easily done? And how?

 

Thank U

Posted
Hi, I hope someone can help me with this "simple"? problem.

 

When viewing shop/reviews.php, the reviews are listed in a column. But the message text ($reviews['reviews_text']) is shown with no linebreaks, just a long line of words.

When clicking to show a single full review - on shop/product_reviews_info.php - linebreaks are included and the text looks the way it should.

 

So... I would like the linebreaks to be included in the reviews listing aswell. Can this be easily done? And how?

 

Thank U

 

Can you post the filename where it appears correctly, and the filename where it does not appear correctly.

 

thx

Posted

Ok, the filename where it is displayed correctly is "shop/product_reviews_info.php" (FILENAME_PRODUCT_REVIEWS_INFO).

 

And the filename where it is NOT displayed correctly is "shop/reviews.php (FILENAME_REVIEWS)". I will paste the code of that file below:

 

<!-- body //-->

<table width="92%" border="0" align="center" cellpadding="0" cellspacing="0">

<tr>

<!-- body_text //-->

<td width="100%" valign="top"><table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="0">

<tr>

<td class="pageHeading"><?php echo HEADING_TITLE; ?></td>

<td class="pageHeading" align="right"><?php echo tep_image(DIR_WS_IMAGES . 'table_background_reviews_new.gif', HEADING_TITLE, HEADING_IMAGE_WIDTH, HEADING_IMAGE_HEIGHT); ?></td>

</tr>

</table></td>

</tr>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

</tr>

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="2">

<?php

$reviews_query_raw = "select r.reviews_id, left(rd.reviews_text, 100) as reviews_text, r.reviews_rating, r.date_added, p.products_id, pd.products_name, p.products_image, r.customers_name from " . TABLE_REVIEWS . " r, " . TABLE_REVIEWS_DESCRIPTION . " rd, " . TABLE_PRODUCTS . " p, " . TABLE_PRODUCTS_DESCRIPTION . " pd where p.products_status = '1' and p.products_id = r.products_id and r.reviews_id = rd.reviews_id and p.products_id = pd.products_id and pd.language_id = '" . (int)$languages_id . "' and rd.languages_id = '" . (int)$languages_id . "' order by r.reviews_id DESC";

$reviews_split = new splitPageResults($reviews_query_raw, MAX_DISPLAY_NEW_REVIEWS);

 

if ($reviews_split->number_of_rows > 0) {

if ((PREV_NEXT_BAR_LOCATION == '1') || (PREV_NEXT_BAR_LOCATION == '3')) {

?>

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr>

<td class="smallText"><?php echo $reviews_split->display_count(TEXT_DISPLAY_NUMBER_OF_REVIEWS); ?></td>

<td align="right" class="smallText"><?php echo TEXT_RESULT_PAGE . ' ' . $reviews_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info'))); ?></td>

</tr>

</table></td>

</tr>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

</tr>

<?php

}

 

$reviews_query = tep_db_query($reviews_split->sql_query);

while ($reviews = tep_db_fetch_array($reviews_query)) {

?>

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr>

<td class="main"><?php echo '<a href="' . tep_href_link(FILENAME_PRODUCT_REVIEWS_INFO, 'products_id=' . $reviews['products_id'] . '&reviews_id=' . $reviews['reviews_id']) . '"><u><b>' . $reviews['products_name'] . '</b></u></a> <span class="smallText">' . sprintf(TEXT_REVIEW_BY, tep_output_string_protected($reviews['customers_name'])) . '</span>'; ?></td>

<td class="smallText" align="right"><?php echo sprintf(TEXT_REVIEW_DATE_ADDED, tep_date_long($reviews['date_added'])); ?></td>

</tr>

</table></td>

</tr>

<tr>

<td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">

<tr class="infoBoxContents">

<td><table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr>

<td width="10"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>

<td width="<?php echo SMALL_IMAGE_WIDTH + 10; ?>" align="center" valign="top" class="main"><?php echo '<a href="' . tep_href_link(FILENAME_PRODUCT_REVIEWS_INFO, 'products_id=' . $reviews['products_id'] . '&reviews_id=' . $reviews['reviews_id']) . '">' . tep_image(DIR_WS_IMAGES . $reviews['products_image'], $reviews['products_name'], SMALL_IMAGE_WIDTH, SMALL_IMAGE_HEIGHT) . '</a>'; ?></td>

<td valign="top" class="main"><?php echo tep_break_string(tep_output_string_protected($reviews['reviews_text']), 60, '-<br>') . ((strlen($reviews['reviews_text']) >= 100) ? '..' : '') . '<br><br><i>' . sprintf(TEXT_REVIEW_RATING, tep_image(DIR_WS_IMAGES . 'stars_' . $reviews['reviews_rating'] . '.gif', sprintf(TEXT_OF_5_STARS, $reviews['reviews_rating'])), sprintf(TEXT_OF_5_STARS, $reviews['reviews_rating'])) . '</i>'; ?></td>

<td width="10" align="right"><?php echo tep_draw_separator('pixel_trans.gif', '10', '1'); ?></td>

</tr>

</table></td>

</tr>

</table></td>

</tr>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

</tr>

<?php

}

?>

<?php

} else {

?>

<tr>

<td>

<?php new infoBox(array(array('text' => TEXT_NO_REVIEWS))); ?>

</td>

</tr>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

</tr>

<?php

}

 

if (($reviews_split->number_of_rows > 0) && ((PREV_NEXT_BAR_LOCATION == '2') || (PREV_NEXT_BAR_LOCATION == '3'))) {

?>

<tr>

<td><table border="0" width="100%" cellspacing="0" cellpadding="2">

<tr>

<td class="smallText"><?php echo $reviews_split->display_count(TEXT_DISPLAY_NUMBER_OF_REVIEWS); ?></td>

<td align="right" class="smallText"><?php echo TEXT_RESULT_PAGE . ' ' . $reviews_split->display_links(MAX_DISPLAY_PAGE_LINKS, tep_get_all_get_params(array('page', 'info'))); ?></td>

</tr>

</table></td>

</tr>

<tr>

<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>

</tr>

<?php

}

?>

</table></td>

</tr>

</table></td>

<!-- body_text_eof //-->

</tr>

</table>

<!-- body_eof //-->

 

I guess that tags are stripped, but I don´t want that.

Thank you!

Posted

I guess you could ask this question differently, since it applies to other files aswell.

 

So... How do you make text appear WITH linebeaks when listed in an array. Or maybe the array part has nothing to do with it? I´m so lost...

Posted

i haven't actually tested this, so your milage may vary, but i think what you need is the php function nl2br (new line to break)

 

try the following:

 

in reviews.php, find this bit of code:

<?php echo tep_break_string(tep_output_string_protected($reviews['reviews_text']), 60, '-<br>') .

 

and replace with:

<?php echo tep_break_string(nl2br(tep_output_string_protected($reviews['reviews_text']), 60, '-<br>')) .

 

RJ

Posted

My hero... :thumbsup:

 

Thanks man! That worked like a charm.

 

Had to use

 

<?php echo tep_break_string(nl2br(tep_output_string_protected($reviews['reviews_text']), 60, '-<br>')) .

 

instead of

 

<?php echo tep_break_string(nl2br(tep_output_string_protected($reviews['reviews_text'])), 60, '-<br>') .

 

though (check the parenthesis).

 

Thanks again!

 

MJ

Posted
My hero... :thumbsup:

 

Thanks man! That worked like a charm.

 

Had to use

 

<?php echo tep_break_string(nl2br(tep_output_string_protected($reviews['reviews_text']), 60, '-<br>')) .

 

instead of

 

<?php echo tep_break_string(nl2br(tep_output_string_protected($reviews['reviews_text'])), 60, '-<br>') .

 

though (check the parenthesis).

 

Thanks again!

 

MJ

 

hey, that's exactly how i posted it! so i think you must mean it was the second way that worked, not the first, which as i look at it more carefully seems right.

 

glad it worked!

Posted

Hey, yeah sorry. I was really tired when I wrote that.

What I meant was the opposite:

 

Had to use

 

<?php echo tep_break_string(nl2br(tep_output_string_protected($reviews['reviews_text'])), 60, '-<br>') .

 

instead of

 

<?php echo tep_break_string(nl2br(tep_output_string_protected($reviews['reviews_text']), 60, '-<br>')) .

 

though (check the parenthesis).

 

MJ

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...