insert query werkt niet...

Pagina: 1
Acties:
  • 53 views sinds 30-01-2008

  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
(even tussen het carnavallen door...)
hallo, ik heb en (waarschijnlijk) klein probleem. Ik heb onderstaande query's, het probleem is dat hij de echo/print wel weergeeft maar de data niet in de database zet. Terwijl de echo na de insert komt...als hij geen data zou invoegen dan zou hij de echo toch ook niet weer moeten geven? ik heb al geprobeerd de query opbouw te veranderen maar dit zonder resultaat... de tabelnamen kloppen en de variabelen ook..

PHP:
1
2
3
4
5
$query = "INSERT INTO users (woonplaats,msn,icq,ogen,lengte) 
VALUES ('$woonplaats','$msn','$icq','$ogen','$lengte')";
mysql_query ($query);

echo "Je bent succesvol aangemeld, je kunt nu inloggen...";


en bij deze is hetzelfde probleem...

PHP:
1
2
$query = "UPDATE users WHERE memberid = '$memberid' SET pic='$filename'"; 
    print "[img]$memberid/$filename></img><BR[/img]";


wie kan mij helpen? ik snap er niks van...

[ Voor 27% gewijzigd door robg1984 op 03-03-2003 16:22 ]


  • whoami
  • Registratie: December 2000
  • Laatst online: 11:47
Print de query eens naar het scherm voor je hem uitvoert.
Kijk of alle variablen een goeie waarde hebben enzo.

https://fgheysels.github.io/


  • D2k
  • Registratie: Januari 2001
  • Laatst online: 09-01 11:25

D2k

or die(mysql_error());

Doet iets met Cloud (MS/IBM)


  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
de waardes kloppen, ik heb or die(mysql_error()); erachter gezet maar zonder resultaat, krijg geen foutmelding...

  • Boomerang
  • Registratie: November 2000
  • Niet online
robg1984 schreef op 03 maart 2003 @ 16:25:
de waardes kloppen, ik heb or die(mysql_error()); erachter gezet maar zonder resultaat, krijg geen foutmelding...
Heb je display_errors wel aanstaan in je php config file ?

edit:

Tis idd sterk aangeraden om achter iedere query/connect naar mysql or die(mysql_error()); mee te geven, maar nog slimmer is het om in je uiteindelijke code, eigen error functies te maken.
Zoiets als:
mysql_query($q) or error();

en dan:
function error() {
// Hier je foutmeldingen enzo ...
}

[ Voor 37% gewijzigd door Boomerang op 03-03-2003 16:43 ]


  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
ja display_errors staat aan...

  • Boomerang
  • Registratie: November 2000
  • Niet online
robg1984 schreef op 03 March 2003 @ 16:46:
ja display_errors staat aan...
Probeer es het volgende:

PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
<?
$query = "INSERT INTO users (woonplaats,msn,icq,ogen,lengte)
VALUES ('$woonplaats','$msn','$icq','$ogen','$lengte')";
$sql = mysql_query ($query) or die (mysql_error());

if($sql) {
echo "Je bent succesvol aangemeld, je kunt nu inloggen...";
}

else {
echo "er is een fout opgetreden";
}
?>


Wat voor output krijg je nu terug ?
?>

[ Voor 14% gewijzigd door Boomerang op 03-03-2003 16:49 ]


  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
output: er is een fout opgetreden

er zit dus denk ik iets fout in de query maar zou niet weten wat...

  • djazete
  • Registratie: Juli 1999
  • Laatst online: 07-02-2020

djazete

steel

en als je je query met 'harde' waardes direct in je sql stopt (bv vanaf de sql prompt of vanaf phpmyadmin..)?
krijg je dan ook een error, of niet?

Verwijderd

ook handig:
voeg op regel 4 toe:
echo $query;
en probeer de output die daarmee gegenereerd wordt eens in phpmyadmin te plakken. tien tegen 1 dat er iets niet goed zit met de velden / waarden

Verwijderd

Check voor de zekerheid al je tabel rechten.
En zijn het wel allemaal de goede types?
is icq wel een text/varchar?
(etc)
De query lijkt goed, naar mijns inziens :)
suc6!

  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
by the way: dit was de fout....

You have an error in your SQL syntax near '1') or die(mysql_error())' at line 1

echo $query; -> geeft geen extra output


de tabel rechten kloppen, hij heeft namelijk al eens gewerkt...dat is het gekke, maar ik weet niet wat ik gedaan heb maar hij gaf toen ineens fouten

[ Voor 102% gewijzigd door robg1984 op 03-03-2003 17:01 ]


  • Boomerang
  • Registratie: November 2000
  • Niet online
robg1984 schreef op 03 March 2003 @ 16:55:
by the way: dit was de fout....

You have an error in your SQL syntax near '1') or die(mysql_error())' at line 1

echo $query; -> geeft geen extra output


de tabel rechten kloppen, hij heeft namelijk al eens gewerkt...dat is het gekke, maar ik weet niet wat ik gedaan heb maar hij gaf toen ineens fouten
or die kun je weglaten bij phpMyAdmin/mysqlclient. Daar ligt het probleem dus niet denk ik

  • beetle71
  • Registratie: Februari 2003
  • Laatst online: 21-08 17:05
insert into users SET !!!
DUS:
PHP:
1
2
3
4
5
6
7
<?
$query = "INSERT INTO users SET (woonplaats,msn,icq,ogen,lengte) 
VALUES ('$woonplaats','$msn','$icq','$ogen','$lengte')"; 
mysql_query ($query); 

echo "Je bent succesvol aangemeld, je kunt nu inloggen...";
?> 


en die andere:
PHP:
1
$query = "UPDATE users SET pic='$filename' WHERE memberid = '$memberid' ";


Beetle71

  • Boomerang
  • Registratie: November 2000
  • Niet online
beetle71: Bij UPDATE-queries wel ja, maar voor INSERT queries echt niet :)
INSERT-queries zien er altijd zo uit:
INSERT INTO table (blaat) VALUES('bla');

Lees dit document nog maar es door

  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
ik heb SET erbij gezet, krijg nu deze foutmelding:

You have an error in your SQL syntax near '(woonplaats,msn,icq,ogen,lengte' at line 1

maar daar zit niks raars

SET weer weggehaald...

Ben even eten....want vanavond drinken op een lege maag is anders niet goed he...

[ Voor 32% gewijzigd door robg1984 op 03-03-2003 17:11 ]


  • Boomerang
  • Registratie: November 2000
  • Niet online
Als je terug bent moet je maar ff een table-dump posten, kunnen we beter nagaan waar het fout gaat...

  • beetle71
  • Registratie: Februari 2003
  • Laatst online: 21-08 17:05
@ boomerang ( :O gisteren carnaval gevierd.... 8)7 )

You're absolutely right! _/-\o_

Beetle71

  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
we aten pas later dus....

de fout:

You have an error in your SQL syntax near '1') or die(mysql_error())' at line 1

tabledump:

CREATE TABLE users (
memberid int(11) unsigned NOT NULL auto_increment,
gebruikersnaam varchar(100) default '0',
wachtwoord varchar(100) default '0',
naam varchar(250) default '0',
email varchar(100) default '0',
homepage varchar(100) default '0',
geboortedatum varchar(10) default '0',
woonplaats varchar(75) default '0',
geslacht varchar(12) default '0',
relatie int(1) default '0',
hobbys blob,
favodrankje varchar(100) default '0',
favoartiest varchar(100) default '0',
favofilm varchar(100) default '0',
ogen varchar(255) NOT NULL default '',
lengte varchar(255) NOT NULL default '',
leeftijd char(2) NOT NULL default '',
roken varchar(255) NOT NULL default '',
piercing varchar(255) NOT NULL default '',
tattoo varchar(255) NOT NULL default '',
school varchar(255) NOT NULL default '',
msn varchar(255) NOT NULL default '',
icq varchar(255) NOT NULL default '',
werk varchar(255) NOT NULL default '',
cafe varchar(255) NOT NULL default '',
kleding varchar(255) NOT NULL default '',
haar varchar(255) NOT NULL default '',
overige text NOT NULL,
pic varchar(255) NOT NULL default 'default.gif',
bekeken int(10) unsigned default '0',
geactiveerd varchar(12) default '0',
PRIMARY KEY (memberid)
) TYPE=MyISAM;

ik zal gelijk even de code met complete query posten want die van net was een ingekorte....dit is wat ik nu heb:

PHP:
1
2
3
4
5
6
7
8
9
10
$query = "INSERT INTO users (gebruikersnaam,wachtwoord,naam,email,homepage,geboortedatum,woonplaats,favodrankje,favoartiest,favofilm,hobbys,geslacht,relatie,msn,icq,ogen,lengte,leeftijd,roken,piercing,tattoo,school,werk,cafe,kleding,haar,overige,geactiveerd) VALUES ('$gebruikersnaam','$wachtwoord','$naam','$email','$homepage','$geboortedatum','$woonplaats', '$drank', '$artiest','$film','$hobbys','$geslacht','$relatie','$msn','$icq','$ogen','$lengte','$leeftijd','$roken','$piercing','$tattoo','$school','$werk','$cafe,'$kleding','$haar','$overige','$activeringscode') or die(mysql_error());";
$sql = mysql_query ($query) or die (mysql_error());

if($sql) { 
echo "Je bent succesvol aangemeld, je kunt nu inloggen..."; 
} 

else { 
echo "Helaas, er is een fout opgetreden, <a href='mailto:webmaster@eindhovenweb.nl'>neem contact op met ons</a>!"; 
}


offtopic: ben al 3 dagen aan het feesten, mijn voeten beginnen het te begeven...

[ Voor 52% gewijzigd door robg1984 op 03-03-2003 17:32 ]


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 11:58

crisp

Devver

Pixelated

Begin eens met in je query de quotes weghalen om de vars die numeriek zijn...

Intentionally left blank


  • djazete
  • Registratie: Juli 1999
  • Laatst online: 07-02-2020

djazete

steel

je kunt ook beter 1 ding tegelijk doen
php-en en carnevallen is niet handig
?

crisp: dat zou die error niet echt mogen veroorzaken volgens mij..
tlijkt me eigenlijk eerder dat het aan z'n input ligt..ergens een ' teveel ofzo

[ Voor 53% gewijzigd door djazete op 03-03-2003 17:34 ]


  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
djazete, da klopt ja....

als ik de quotes weghaal om de numerieke waardes (leeftijd en geactiveerd) dan krijg ik deze foutmelding:

You have an error in your SQL syntax near ''','','','','',','','','',1) or die(mysql_error())' at line 1

dus ik zet ze weer terug....

  • djazete
  • Registratie: Juli 1999
  • Laatst online: 07-02-2020

djazete

steel

weet je eigenlijk wel welke waardes je erin zet?

  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
ja dat is d.m.v een formulier.....en dit heeft al ooit gewerkt, snap niet waarom het nou niet meer werkt...

  • Boomerang
  • Registratie: November 2000
  • Niet online
Als je volgende keer je code wat leesbaarder maakt, dat maakt het voor jezelf, en voor anderen een stuk makkelijker...

PHP:
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
$query = "INSERT INTO users(
gebruikersnaam,wachtwoord,
naam,email,
homepage,geboortedatum,
woonplaats,favodrankje,
favoartiest,favofilm,
hobbys,geslacht,
relatie,msn,
icq,ogen,
lengte,leeftijd,
roken,piercing,
tattoo,school,
werk,cafe,
kleding,haar,
overige,geactiveerd
) 
VALUES (
'$gebruikersnaam',
'$wachtwoord',
'$naam',
'$email',
'$homepage',
'$geboortedatum',
'$woonplaats',
 '$drank', '$artiest',
'$film',
'$hobbys',
'$geslacht',
'$relatie',
'$msn',
'$icq',
'$ogen',
'$lengte',
'$leeftijd',
'$roken',
'$piercing',
'$tattoo',
'$school',
'$werk',
'$cafe,
'$kleding',
'$haar',
'$overige',
'$activeringscode')" or die(mysql_error());
ja dat is d.m.v een formulier.....en dit heeft al ooit gewerkt, snap niet waarom het nou niet meer werkt...
Gokje.... register_globals=off ?
Werk dan met GLOBALS, check sticky...

[ Voor 46% gewijzigd door Boomerang op 03-03-2003 17:43 ]


  • djazete
  • Registratie: Juli 1999
  • Laatst online: 07-02-2020

djazete

steel

je hebt nu die or die() in je sql statement.. lijkt mij nie thelemaal correct..
ook die ; in je sql statement is niet echt nodig toch?

  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
sorry van die leesbaarheid....globals staan aan, andere formulieren werken ook op deze manier.....

djazete, heb ik beide weggehaald, maar geen positieve resultaten, werkt niet...

[ Voor 31% gewijzigd door robg1984 op 03-03-2003 17:45 ]


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 11:58

crisp

Devver

Pixelated

robg1984 schreef op 03 March 2003 @ 17:36:
djazete, da klopt ja....

als ik de quotes weghaal om de numerieke waardes (leeftijd en geactiveerd) dan krijg ik deze foutmelding:

You have an error in your SQL syntax near ''','','','','',','','','',1) or die(mysql_error())' at line 1

dus ik zet ze weer terug....
Als ik je tabel bekijk zijn juist de velden relatie en bekeken numeriek, en leeftijd en geactiveerd juist niet...

Als ik jou was zou ik lekker gaan carnavallen, daarna 3 dagen ontnuchteren, en waarschijnlijk zie je het dan een stuk helderder ;)

Intentionally left blank


  • Boomerang
  • Registratie: November 2000
  • Niet online
crisp schreef op 03 March 2003 @ 17:47:
[...]

Als ik je tabel bekijk zijn juist de velden relatie en bekeken numeriek, en leeftijd en geactiveerd juist niet...

Als ik jou was zou ik lekker gaan carnavallen, daarna 3 dagen ontnuchteren, en waarschijnlijk zie je het dan een stuk helderder ;)
Idd, er valt nog het een en ander aan te merken op de tabel:
- Gebruik voor de data altijd de DATE-functions van MySQL.
- Voor het veld ICQ kun je bijvoorbeeld beter een float gebruiken.
- Voor grote stukken tekst gebruik je text

[edit]
Sorry, ik zat een beetje te slapen :)

[ Voor 5% gewijzigd door Boomerang op 03-03-2003 17:56 ]


Verwijderd

als ik naar je foutmelding kijk:
You have an error in your SQL syntax near ''','','','','',','','','',1

dan zit de fout volgens mij in de kolom hobbys met datatype Blob.

  • djazete
  • Registratie: Juli 1999
  • Laatst online: 07-02-2020

djazete

steel

icq als float...?? klinkt mij onlogisch in de oren...

  • [ash]
  • Registratie: Februari 2002
  • Laatst online: 23-08 12:03

[ash]

Cookies :9

robg1984 schreef op 03 maart 2003 @ 16:21:
PHP:
1
2
3
$query = "INSERT INTO users (woonplaats,msn,icq,ogen,lengte) 
VALUES ('$woonplaats','$msn','$icq','$ogen','$lengte')";
mysql_query ($query);
Gezien je 'strings' insert, moet je er volgens mij wel quotes omheen zetten, probeer eens het volgende:
PHP:
1
2
3
$query = "INSERT INTO users (woonplaats,msn,icq,ogen,lengte) 
VALUES (\"".$woonplaats."\",."\"".$msn."\",\"".$icq."\",\"".$ogen."\",\"".$lengte."\")";
mysql_query ($query);

  • djazete
  • Registratie: Juli 1999
  • Laatst online: 07-02-2020

djazete

steel

hij zet er toch al ' omheen? volgens mij gaat dat ook goed hoor...

  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
ja ik heb er ' om heen staan, dat heeft gewerkt, dus kan het niet aan liggen....ik zal de rij hobbys veranderen in text ...kijken of dat iets uithaalt...

nee dus...

[ Voor 14% gewijzigd door robg1984 op 03-03-2003 18:43 ]


  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
volgens php zit hier de fout ergens:

'$kleding','$haar','$overige')";

ik heb al geporbeerd die dubbele quotes weg te halen....werkt niet

  • djazete
  • Registratie: Juli 1999
  • Laatst online: 07-02-2020

djazete

steel

en als je een voor een een veld er tussen uit haalt, krijg je dan wel resultaat..?
Dan kan je achterhalen welk veld problemen geeft

  • phYzar
  • Registratie: November 2001
  • Laatst online: 07:03
een stukkie code van mijn werkende php site:

mysql_connect("krijgjeniet",$username,$password);
@mysql_select_db($database) or die( "Unable to select database");
$query="INSERT INTO telefoon VALUES('$merk','$type','$schermkleuren','$schermaantalkleuren',
'$resolutie','$aantalregels','$afmeting','$gewichtingram','$frontjes',
'$accutype','$mAh','$standbytijdminuten','$spreektijdminuten',
'$frequenties','$gprs','$umts','$gsm','$sms','$mms','$ems','$email',
'$bluetooth','$infrarood','$modem','$wap','$java','$live_imode_supp',
'$voicedial','$polyfonisch','$trilalarm','$url_thumb','$url_img','$prijs')";
$result=mysql_query($query);

mysql_close();

Helpt dat je een beetje?

  • Boomerang
  • Registratie: November 2000
  • Niet online
Achter $cafe heb je een ' vergeten :) in je insert query dus..

De query wordt dan:
PHP:
1
2
$query = "INSERT INTO users (gebruikersnaam,wachtwoord,naam,email,homepage,geboortedatum,woonplaats,favodrankje,favoartiest,favofilm,hobbys,geslacht,relatie,msn,icq,ogen,lengte,leeftijd,roken,piercing,tattoo,school,werk,cafe,kleding,haar,overige,geactiveerd) VALUES ('$gebruikersnaam','$wachtwoord','$naam','$email','$homepage','$geboortedatum','$woonplaats', '$drank', '$artiest','$film','$hobbys','$geslacht','$relatie','$msn','$icq','$ogen','$lengte','$leeftijd','$roken','$piercing','$tattoo','$school','$werk','$cafe','$kleding','$haar','$overige','$activeringscode')"; 
$sql = mysql_query ($query) or die (mysql_error());


Sorry voor de layout verneuking ..

edit:

En nog een tip... ik hoop dat je wel MD5 gebruikt voor je passwords mee op te slaan ?

[ Voor 113% gewijzigd door Boomerang op 03-03-2003 19:29 ]


  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
djazete -> had ik gedaan, heb namelijk het veld 'geactiveerd' eruit gehaald, blijft fout geven op het einde van de query.

phyzar -> helaas niet, is ongeveer dezelfde opbouw he?

  • Mavvie
  • Registratie: Maart 2001
  • Laatst online: 10-05-2021
Misschien zo:

PHP:
1
2
3
$query = ("INSERT INTO users (woonplaats,msn,icq,ogen,lengte) 
VALUES ('$woonplaats','$msn','$icq','$ogen','$lengte'"); 
mysql_query ($query);


En staan je register_globals on of off?

Twitter | Linkedin


  • robg1984
  • Registratie: December 2002
  • Laatst online: 09:05
register_globals staat op on, maar idd Boomerang, het lag aan dat aanhalingsteken dat miste......is mij niet eens opgevallen en de rest ook niet die reply's posten....maar goed, het werkt nu perfect! Maar nu die andere nog...

PHP:
1
2
3
4
5
if (is_uploaded_file($_FILES['userfile']['tmp_name'])) { 
    move_uploaded_file($_FILES['userfile']['tmp_name'], "/opt/guide/www.eindhovenweb.nl/HTML/images/users/$memberid/$filename");   
    $pic_query = "UPDATE users WHERE memberid = '$memberid' SET pic='$filename' or die(mysql_error());"; 
    print "[img]http://www.eindhovenweb.nl/images/users/$memberid/$filename></img><BR[/img]"; 
}


deze werkte dus ook niet....

[ Voor 52% gewijzigd door robg1984 op 03-03-2003 19:41 ]


  • [ash]
  • Registratie: Februari 2002
  • Laatst online: 23-08 12:03

[ash]

Cookies :9

robg1984 schreef op 03 March 2003 @ 18:41:
ja ik heb er ' om heen staan, dat heeft gewerkt, dus kan het niet aan liggen....ik zal de rij hobbys veranderen in text ...kijken of dat iets uithaalt...

nee dus...
Niet geprobeerd dus :?

  • drm
  • Registratie: Februari 2001
  • Laatst online: 09-06-2025

drm

f0pc0dert

"UPDATE users WHERE memberid = '$memberid' SET pic='$filename' or die(mysql_error());"
Goh, zou dat laatste gedeelte wel onderdeel van de query moeten zijn :? :?

Kom op zeg, de volgende keer maar gewoon even de php manual lezen ofzo, dit gaat echt een beetje te ver.

Music is the pleasure the human mind experiences from counting without being aware that it is counting
~ Gottfried Leibniz

Pagina: 1

Dit topic is gesloten.