Domanda

Non ricevo indietro i dati dal mio DB come mi aspetto. So che posso ottenere i dati dal DB perché ho altre funzioni di lavoro. Con questa pagina, quello che sto cercando di fare è la seguente:

Se non postback, allora mi sarebbe piaciuto fare eco "No categoria selezionata"

Se una categoria è stata scelta, quindi mi piacerebbe per poter ottenere che i dati dal DB e vederlo sulla pagina. Sono sicuro che posso fare tutto questo in un'unica vista, sto solo non fare qualcosa di giusto. Qualcuno può aiutarmi per favore?

L'errore che sto ottenendo è:

Un errore di PHP è verificato Severity: Avviso Messaggio: Cercando di ottenere la proprietà di non-oggetto Nome file: views / category_view.php Linea Numero: 25

Per quanto riguarda lo schema db:

Tavolo:. 'business' id, busname, busowner, busaddress, busicyt, busstate, buszip, busphone, webaddress, categoria, optional, userid

Tavolo:. 'categoria' id, catname, catDesc

Tavolo:. 'foto' id, photoname, photolocation, BusID, userid

Tavolo:. 'speciali' id, specname, specdesc, BusID, userid

Tavolo:. 'video' id, titolo, collegamento, BusID

Pastebin: http://pastebin.com/AQqcvnAb

È stato utile?

Soluzione

Non è sicuro a tutti che cosa è esattamente o non funziona per voi. Ho provato questo locale, ed è facendo eco "nessuna categoria selezionata" in modo corretto.

Visualizza:

<?php 
echo form_open('/site/categories');
echo form_fieldset(); ?>
<legend>Choose the Category of Business you are interested in.</legend>
<select name="catSelect">
<?php 
foreach ($catList->result() as $row){
    echo '<option value='.$row->id.'>'.$row->catname.'</option>';
}
echo form_submit('submit', 'Submit');
echo form_fieldset_close();
echo form_close(); 
?>
<table id="businessTable" class="tablesorter">
<thead><tr><th>Business Name</th><th>Photos</th><th>Videos</th><th>Specials</th></tr></thead>
<?php 
if(count($serviceVendors) > 0){
    foreach ($serviceVendors as $row){
        echo '<tr><td>'.$row->busname.'</td><td>';
        if(isset($row->photoname)){
                echo "photoname is set";
            }else{
                echo "photoname not set";
            }
            echo '</td><td>';
            if(isset($row->title)){
                echo "title set";
            }else{
                echo "title not set";
            }
            echo '</td><td>';
            if(isset($row->specname)){
                echo "specname set";
            }else{
                echo "specname not set";
            }
            echo '</td></tr>';
        }
    }else{
        echo "no category selected";
    }
?>
</table>

Se si può essere un po 'più specifico (ed inviare uno schema db), ci proverò più difficile.


OK. Il problema è nella tua category_view:

<?php if(count($businessList) > 0) : foreach ($businessList as $svrow): ?>

deve essere:

<?php if(count($businessList) > 0) : foreach ($businessList->result() as $svrow): ?>

senza l'identificatore ->result() esso non assegnare l'oggetto a svrow. Quindi, con questa linea, al posto echo $svrow->busname; sarà eco la ragione sociale come previsto.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top