foutmelding bij id ophalen uit database

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jeroen

Jeroen

31/05/2006 08:01:00
Quote Anchor link
Hallo allemaal,

Wat doe ik fout? Ik krijg de volgende melding:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\vakantieanders\workshops\gebruikers\gebruiker_bevestigen.php on line 107

Regel 107 is de regel van 'while'

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
<?php
$mysql
      = mysql_query ("SELECT id FROM user2 WHERE username = '".$user."'");

while ($regel = mysql_fetch_array($mysql)){
    $userid = $regel["id"];
}

?>
 
PHP hulp

PHP hulp

16/11/2024 20:45:42
 
- SanThe -

- SanThe -

31/05/2006 08:36:00
Quote Anchor link
Echo de query eens. Zit waarschijnlijk een foutje in. Ik denk dat $user leeg is.
 
Jeroen

Jeroen

31/05/2006 08:39:00
Quote Anchor link
Heb ik gedaan. $user geeft een waarde
 
- SanThe -

- SanThe -

31/05/2006 08:47:00
Quote Anchor link
Gebruik eens $var = mysql_query(...) or die(...)
 
Robert Deiman

Robert Deiman

31/05/2006 09:03:00
Quote Anchor link
Klopt de username wel die je hebt ingegeven? Het kan ook hoofdlettergevoelig zijn he! (ligt aan os van je server)

De foutmelding betekend dat er geen records zijn gevonden die aan je where voldoen, controleer dus even de gebruikersnaam die je probeert te zoeken.
 
Jeroen

Jeroen

31/05/2006 09:08:00
Quote Anchor link
ik gebruik dezelfde $user bij een insert in hetzelfde bestand. Daar zet hij hem dan in het database en even later zoek ik hem op voor zijn id..
 
Robert Deiman

Robert Deiman

31/05/2006 09:11:00
Quote Anchor link
En als je die WHERE weghaald, geeft die dan wel alle users weer?
En wordt de data wel goed weggestopt in je tabel?

De foutmelding betekend dat de query geen resultaten heeft opgeleverd, het kan zijn dat je een naam verkeerd hebt staan, waardoor er geen zoekresultaten zijn.

Probeer inderdaad ook even de mysql_error() zoals SanThe al aangaf.
 
Jeroen

Jeroen

31/05/2006 09:17:00
Quote Anchor link
Als ik WHERE verwijder blijf ik dezelfde melding krijgen. Ik zal er even een or die bij melden..

Kan het misschien zijn dat het 'te' snel gaat? Want de regel daarvoor maak ik het in de tabel user2 de gebruiker aan, direct daarna vraag ik de id aan van de zojuist aangemaakte gebruiker..
 
Robert Deiman

Robert Deiman

31/05/2006 09:18:00
Quote Anchor link
Kan je dan niet in de tabel kijken of de data wel aanwezig is waar je op probeerd te zoeken?

MAW, is de update query wel goed?
 
Jeroen

Jeroen

31/05/2006 09:22:00
Quote Anchor link
Ja de data is gewoon aanwezig..

SELECT id FROM user2 WHERE username = '".$user."'");

Het onderstaande is zeker weten goed:
- id
-user2
-username
-$user

Daarom vind ik het ook zo raar want er blijft niet veel meer over zo..
 
- wes  -

- wes -

31/05/2006 09:33:00
Quote Anchor link
linkt je connectie naar je goede database in dat geval (dus niet je tabel, maar je database). Zou kunnen :)
 
Jeroen

Jeroen

31/05/2006 09:52:00
Quote Anchor link
Oke bij het vorige lijstje zag ik toch nog opeens een fout. user2 moest zijn users2. geen foutmelding meer, maar haalt niet de $userid toch nog niet op.. Ook de or die geeft geen resultaat..

Maar het kan niet zo zijn dat het te snel gaat omdat beide query's precies na elkaar komen?

Ik ga nog even verder zoeken.
 
Robert Deiman

Robert Deiman

31/05/2006 10:00:00
Quote Anchor link
@Jeroen,

Doe je dit alleen om erachter te komen welke id de laatst ingevoegde was?
Zo ja, Waarom doe je dat op deze manier, er zijn gemakkelijkere methoden voor..
 
Eris -

Eris -

31/05/2006 10:01:00
Quote Anchor link
SanThe:
Gebruik eens $var = mysql_query(...) or die(...)


Doe dit even. Een goede error afhandeling is van levens belang
 
Jeroen

Jeroen

31/05/2006 10:02:00
Quote Anchor link
ja dat klopt.. In 2 query's die na het invoegen van de gebruiker komt heb ik de id nodig..

Sja haha, omdat ik niet beter weet.. Ik ben nog een beginner..
 
Jeroen

Jeroen

31/05/2006 10:20:00
Quote Anchor link
die error afhandeling heb ik er inzitten.. alleen levert dit niks op..

Robert, kun je me vertellen wat deze andere methoden zijn?
 
Robert Deiman

Robert Deiman

31/05/2006 10:23:00
Quote Anchor link
$laatste_id=mysql_insert_id();
 
Jeroen

Jeroen

31/05/2006 10:33:00
Quote Anchor link
wat het probleem bij mij is, dat hij 2x moet worden toegevoegd. Maar na de eerste krijgt de nieuwe tabel een andere id..
 
Jason de Ridder

Jason de Ridder

31/05/2006 10:49:00
Quote Anchor link
Hij hoeft toch niet in een while vanwege het feit dat je er maar 1tje ophaalt? probeer het is zonder die while-loop?
 
Jeroen

Jeroen

31/05/2006 10:54:00
Quote Anchor link
oke.. ik heb het probleem van die dubbele query opgelost door gewoon die id periodeid te noemen..

Alles werkt, maar hij vult userid nog niet :(

als ik dit heb:
$userid=mysql_insert_id();

Kan ik die userid dan gewoon opvragen via $userid?
 
Jeroen

Jeroen

31/05/2006 11:34:00
Quote Anchor link
Probleem opgelost mannen! Ik moest de $userid op een andere plaats zetten.. Bedankt voor jullie hulp!

Gr.
Jeroen
 



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.