In diverse topics heb ik gelezen dat het mogelijk is om
een controlle op meerdere waardes te doen, echter lukt mij dit niet.

// records ophalen

<?php
include("config_post.php");
$resultaat = mysql_query("SELECT id, naam, status, afbeelding, onderschrift, post_id, world, reacties, img, post_type, post_bericht,DATE_FORMAT(datum, '%d-%m-%Y') AS datum FROM post ORDER BY post_id DESC LIMIT 0,10"); ?>

//

<?php while ($record = mysql_fetch_array($resultaat)) { ?>

// records verwerken (dit is slechts een voorbeeld)
de echte code bevat nog 3 elseif

<script> <?php

if ($record["post_type"] == 'bericht'and $record["world"] == 'world'){
echo ''.$record['post_bericht'].'' ;
} else {
echo "Je moet Familie zijn van <strong>".$record['naam']."</strong> om dit te kunnen lezen" ;
}; ?>

//</script>

kan iemand mij zeggen waarom deze construktie niet werkt?
ik krijg enkel de else echo te zien. "Je moet Familie zijn van <strong>".$record['naam']."
Als je nu eens leert om netjes te coderen en het ook netjes te posten dan hoef ik dan wel anderen niet door jouw code te baggeren.

Sta evens stil bij het feit dat je zelf het antwoord kunt achterhalen!! Door simpel weg voor de if binnen de while een var_dump of print_r te doen van $record


<?php
    ini_set('display_errors',1);
    error_reporting(E_ALL);
    include("config_post.php");

    $sql = "SELECT  id
           ,        naam
           ,        status
           ,        afbeelding
           ,        onderschrift
           ,        post_id
           ,        world
           ,        reacties
           ,        img
           ,        post_type
           ,        post_bericht
           ,        DATE_FORMAT(datum, '%d-%m-%Y') AS nl_datum 
           FROM     post 
           ORDER BY post_id DESC 
           LIMIT 0,10";
     
    if (($result = mysql_query($sql)) === false) {
        echo $sql.'<br />'.mysql_error();
    }
    else
        while ($record = mysql_fetch_assoc($result)) {
            
            // laten we is kijken wat $record aan waarden heeft voor debug
            
            var_dump($record);
            if (($record['post_type'] == 'bericht' and $record['world'] == 'world') {
                echo $record['post_bericht']; 
            }
            else {
                echo 'Je moet Familie zijn van <strong>'.$record['naam'].'</strong> om dit te kunnen lezen';
            }
        }
   }
?>        


En geef een alias altijd een unieke naam, dus refereer nooit naar een veldnaam binnen het sql-statement!
Bedankt, hier kan ik veel uit leren,
echter krijg ik niks te zien, zelfs geen error
Christiaan Pot op 04/08/2011 20:02:44

Bedankt, hier kan ik veel uit leren,
echter krijg ik niks te zien, zelfs geen error


Met z'n reactie kunnen we uiteraard niets, we weten niet wat je wel dan niet hebt overgenomen!

De fout zit op regel 31 ...... veel plezier met turen
oke gevonden,
nu moet ik gaan debuggen ?

want hier kan ik niet veel mee..
behalve dat ik zie welke waardes de strings hebben

array(12) { ["id"]=> string(1) "1" ["naam"]=> string(5) "admin" ["status"]=> string(1) "1" ["afbeelding"]=> string(7) "541.jpg" ["onderschrift"]=> string(5) "test " ["post_id"]=> string(2) "64" ["world"]=> string(7) "familie" ["reacties"]=> string(3) "aan" ["img"]=> string(80) "http://www.xxxx/xxxx/xxxxx/images/profiel/admin/upload/baby-smile.jpg"; ["post_type"]=> string(4) "foto" ["post_bericht"]=> string(0) "" ["nl_datum"]=> string(10) "04-08-2011"
Ja, wat zie je nu en waar moet het aan voldoen om post_bericht te tonen

Dit record zal uitkomen in de else......

Je kan natuurlijk ook opzoek naar een pak "bijdehandjes" - zelf even nadenken wat je er mee zal kunnen doen -

Reageren