mysqli_num_rows() expects parameter 1 to be mysqli_resul

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mohamed nvt

Mohamed nvt

17/07/2017 21:47:14
Quote Anchor link
Hallo allemaal,

Ik probeer onderstaande query uit te voeren, maar het wil maar niet lukken.
Vanuit een ander pagina probeer ik via $_GET een ID op te halen en tot zover gaat het goed, want tweede regel van deze code laat wel het juiste ID zien.
Vervolgens voer ik een select statement uit, maar krijg 0 resultaat.
Onderstaande query werkt wel op een ander pagina, maar zonder
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
id='". mysqli_real_escape_string($dbc, $_GET['id'])."'


Initieel dacht ik een syntax fout, maar kon geen error vinden.
iemand een idee?
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
if (isset($_GET['id']) && !empty($_GET['id']) && is_numeric($_GET['id'])){
    echo $_GET['id'];
    require ('includes/db-connection.php'); // Connect to the db.
        $query = "SELECT
                            medicines.id,
                            medicines.medicinename,
                            medicines.genericname,
                            medicines.quantity,
                            medicines.expiredate,
                            medicines.sellingprice,
                            medicines.purchaseprice,
                            medicinescompany.companyname,
                            medicinescountry.countryname,
                            medicinestype.medicinetypename,
                            suppliers.suppliername
                FROM medicines
                            LEFT JOIN users ON users.user_id = medicines.userid
                            LEFT JOIN medicines_medicinescompany ON medicines_medicinescompany.medicine_id=medicines.id
                            LEFT JOIN medicinescompany ON medicines_medicinescompany.medicinecompany_id=medicinescompany.id
                            LEFT JOIN medicines_medicinescountry ON medicines_medicinescountry.medicine_id=medicines.id
                            LEFT JOIN medicinescountry ON medicines_medicinescountry.medicinecountry_id=medicinescountry.id
                            LEFT JOIN medicines_suppliers ON medicines_suppliers.medicine_id=medicines.id
                            LEFT JOIN suppliers ON medicines_suppliers.supplier_id=suppliers.id
                            LEFT JOIN medicines_medicinestype ON medicines_medicinestype.medicine_id=medicines.id
                            LEFT JOIN medicinestype ON medicines_medicinestype.medicinetype_id=medicinestype.id
                where
                            id='". mysqli_real_escape_string($dbc, $_GET['id'])."' AND users.user_id = '{$_SESSION['user_id']}'";
        $search_query = mysqli_query($dbc,$query);

        if(mysqli_num_rows($search_query) > 0)
 
PHP hulp

PHP hulp

26/01/2021 23:32:12
 
- Ariën -
Beheerder

- Ariën -

17/07/2017 21:51:42
Quote Anchor link
Foutafhandeling toevoegen als je de foutmelding uit je titel krijgt.
 
Mohamed nvt

Mohamed nvt

17/07/2017 22:00:17
Quote Anchor link
Hallo - Ariën -,


Het is opgelost in de where moest ik aangeven medicines.id ipv id, want medicines.id stond al in de select :)
Tnx voor het meedenken!
 
- Ariën -
Beheerder

- Ariën -

17/07/2017 22:29:19
Quote Anchor link
Daarom is foutafhandeling zeker een must, en vooral in grote web-applicaties. Het werkt helemaal mooi als je MySQLi-OO gebruikt. Dan kan je globaal met extend je query-method klonen met ingebouwde foutafhandeling. En het is natuurlijk helemaal mooi als je jouw webapplicatie ook in OO schrijft.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.