Posted August 10, 20159 yr Hello,Have quite the issue at the moment however only specific to Mac users. The downside is, ALL Mac usersI have a page with a Manual PHP block that loads specific data based on the package(s) bought.However this is only visible to non-Mac usersERR_CONTENT_DECODING_FAILEDI disabled Apache mod_deflate, but no changeAny one know what I can do?
August 10, 20159 yr Community Expert Make sure you're not outputting anything directly to the browser, i.e. echo/print/var_dump etc.
August 11, 20159 yr Author Make sure you're not outputting anything directly to the browser, i.e. echo/print/var_dump etc.I am outputting a fair amount of html markup in a block? To be precise, I'm pulling properties from a database to display them in a table.Is this not possible? I'm kind of lost. Minus the MySQL connection this is exactly what is in the block (I'm not using the <?php opener of course$MemberID = \IPS\Member::loggedIn()->member_id; $TimeNow = time(); $Package = false; $st = $IPBSql->prepare("SELECT ps_name,ps_item_id FROM nexus_purchases WHERE ps_expire > ? AND ps_member = ?"); $st->bind_param('ii', $TimeNow, $MemberID); $st->bind_result($Name, $ItemID); $st->execute(); if ($st->fetch()) { $st->close(); switch ($ItemID) { case 7: { $Package = "Bronze"; $st = $MainSql->query("SELECT * FROM tblProperties WHERE UNIX_TIMESTAMP() > (Added + (86400*2)) ORDER BY PropertyID DESC"); $Data = array(); while ($tmp = $st->fetch_array(MYSQLI_ASSOC)) $Data[] = $tmp; } break; case 8: { $Package = "Silver"; $st = $MainSql->query("SELECT * FROM tblProperties WHERE UNIX_TIMESTAMP() > (Added + 86400) ORDER BY PropertyID DESC"); $Data = array(); while ($tmp = $st->fetch_array(MYSQLI_ASSOC)) $Data[] = $tmp; } break; case 9: { $Package = "Gold"; $st = $MainSql->query("SELECT * FROM tblProperties ORDER BY PropertyID DESC"); $Data = array(); while ($tmp = $st->fetch_array(MYSQLI_ASSOC)) $Data[] = $tmp; } break; default: { $Package = false; $st = $MainSql->query("SELECT * FROM tblProperties WHERE UNIX_TIMESTAMP() > (Added + (86400*7)) ORDER BY PropertyID DESC"); $Data = array(); while ($tmp = $st->fetch_array(MYSQLI_ASSOC)) $Data[] = $tmp; } break; } } else { $st->close(); } ?> <div id='membershipType'> <? if ($Package == 'Gold') { ?> You have the <span class='gold-member'>Gold</span> Membership <p>You will see new properties before anyone else does!</p> <? } elseif ($Package == 'Silver') { ?> You have the <span class='silver-member'>Silver</span> Membership <p>You will see new properties one day after Gold does!</p> <? } elseif ($Package == 'Bronze') { ?> You have the <span class='bronze-member'>Bronze</span> Membership <p>You will see new properties one day after Silver does!</p> <? } else { ?> You are a <span>FREE</span> member. <p>Upgrade your membership to see new properties first!</p> <? } ?> </div> <div class="ipsBox"> <h2 class="ipsType_sectionTitle ipsType_reset">Properties</h2> <div class='p10'> <table class='ipsTable'> <thead> <tr> <th>Alias</th> <th>Location</th> <th>Size</th> <th>Date Added</th> </tr> </thead> <? foreach ($Data as $Property) { ?> <tr> <td><a href='/properties/view/?PropertyID=<?=$Property['PropertyID']?>'><?=$Property['Alias']?></a></td> <td><?=$Property['City'] .", ". $Property['State']?></td> <td><?=number_format($Property['LandSize'])?> acres</td> <td>Added <?=date('M d \'y', $Property['Added'])?></td> </tr> <? } ?> </table> </div> </div> <link href='//cdn.datatables.net/1.10.7/css/jquery.dataTables.min.css' type='text/css' rel='stylesheet'/> <script src='//code.jquery.com/jquery-1.11.1.min.js'></script> <script src='//cdn.datatables.net/1.10.7/js/jquery.dataTables.min.js'></script> <script> $('table').dataTable(); </script> <? Edited August 11, 20159 yr by BlinkGC
August 22, 20159 yr Author Make sure you're not outputting anything directly to the browser, i.e. echo/print/var_dump etc.Extremely lost here mate,What use are PHP blocks if you can't output anything from them, they're also eval'd so you can't carry through any variables whatsoever.What am I doing wrong? Please also see this documentation: https://www.invisionpower.com/support/guides/_/ips-community-suite-apps/ip-cont/raw-php-in-ipcontent-r282Although outdated like everything is, this explicitly states that print works fine.
Archived
This topic is now archived and is closed to further replies.