PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : keine datenbank eintragung bei anmeldung ?



qog
26.07.2009, 16:29
Hi ich teste mom ein bissel das VMS aus und wenn ich mich anmelden möchte trägt er nicht in die kontodaten tabelle ein :(
$uid = mysql_insert_id(); db_query("INSERT INTO ".$db_prefix."_kontodaten (nickname,passwort,status,hinweis,kontostand) VALUES ('".$_POST['nickname']."','".md5($_POST['passwort_1'])."','1','','1000')"); woran kann es liegen das nix in der tabelle ankommt?

DimpleX
26.07.2009, 16:30
boar wie soll man das lesen?


DimpleX

qog
26.07.2009, 16:34
boar wie soll man das lesen?


DimpleX

wahr nn fehler drinne habe das jetzt mal verkürtzt

DimpleX
26.07.2009, 16:36
gibt es eine fehler meldung beim anmelden?


gruss
DimpleX

Lokutos
26.07.2009, 16:37
boar wie soll man das lesen?


DimpleX

Mit den Augen :eek:


// User eintragen
if (!$error) {
$uid = mysql_insert_id();
db_query("INSERT INTO ".$db_prefix."_kontodaten (nickname,passwort,status,hinweis,kontostand) VALUES ('".$_POST['nickname']."','".md5($_POST['passwort_1'])."','1','','1000')");
db_query("INSERT INTO ".$db_prefix."_emaildaten (uid,emailadresse,freigabe_fuer) VALUES (".$uid.",'".$_POST['emailadresse']."','".$mailstatus."')");
db_query("INSERT INTO ".$db_prefix."_userdaten (uid,nickname,angemeldet_seit) VALUES (".$uid.",'".$_POST['nickname']."','".time()."')");
$ws = db_query("SELECT * FROM ".$db_prefix."_werberdaten WHERE uid='".$uid."'"); db_query("INSERT INTO ".$db_prefix."_werberdaten (uid,werber,umsatz,zuordnungszeit) VALUES (".$uid.",'".$_SESSION['werber']."','0','".time()."')"); $anmeldeok = "true";
}
er tragt alles nötige ein aber nur :
db_query("INSERT INTO ".$db_prefix."_kontodaten (nickname,passwort,status,hinweis,kontostand) VALUES ('".$_POST['nickname']."','".md5($_POST['passwort_1'])."','1','','1000')");
das läst er ausen vor :( gut nun geh mal in deine datenbank in vms_kontodaten und schau mal ob es folgende spalten gibt:
(nickname,passwort,status,hinweis,kontostand)

ich vermute mal nicht da in kontodaten die ID und nicht der nick benötigt wird.
entweder änderst du die tabelle oder machst aus nickname ID

qog
26.07.2009, 16:38
nothing es gibt kein fehler er macht seine eintrage in werberdaten, emaildaten, userdaten aber in kontodaten kommt nix an, es exestieren auch alle tabellen achja ich nutze das ganze ohne klamm anbindung sondern mit auto_increment

DimpleX
26.07.2009, 16:39
Mit den Augen :eek:

witzbold, es war vorher nicht lesbar bevor er es angepasst hat

:frusty::frusty::frusty::frusty:



DimpleX

Parl
26.07.2009, 16:39
db_query("INSERT INTO ".$db_prefix."_kontodaten (nickname,passwort,status,hinweis,kontostand) VALUES ('".$_POST['nickname']."','".md5($_POST['passwort_1'])."','1','','1000')");


`nickname` gibts doch bei den Kontodaten garnicht, sondern bei den vms_userdaten, sofern du selbst an der Datenbank nichts verändert hast.

MFG

qog
26.07.2009, 16:41
db_query("INSERT INTO ".$db_prefix."_kontodaten (uid,nickname,passwort,status,hinweis,kontostand) VALUES (".$uid.",'".$_POST['nickname']."','".md5($_POST['passwort_1'])."','1','','1000')"); geht auch nicht

qog
26.07.2009, 16:42
db_query("INSERT INTO ".$db_prefix."_kontodaten (nickname,passwort,status,hinweis,kontostand) VALUES ('".$_POST['nickname']."','".md5($_POST['passwort_1'])."','1','','1000')");


`nickname` gibts doch bei den Kontodaten garnicht, sondern bei den vms_userdaten, sofern du selbst an der Datenbank nichts verändert hast.

MFG

wie gesagt es exestieren alle tabellen, der nickname ist bei mir auch in den kontodaten drinne

Parl
26.07.2009, 16:43
Die UID wird doch automatisch vergeben, also brauchst du diese dort garnicht mit eintragen.


db_query("INSERT INTO ".$db_prefix."_kontodaten (passwort,status,hinweis,kontostand) VALUES ('".md5($_POST['passwort_1'])."','1','','1000')");

Würde allein aber eh nichts bringen, wenn kein zusätzlicher Eintrag in den userdaten, werberdaten und emaildaten gemacht wird.

MFG

eRaaaa
26.07.2009, 16:44
ich vermute mal nicht da in kontodaten die ID und nicht der nick benötigt wird.


nicht umbedingt, kann man ja machen wie man möchte, obs so schlau ist(addon technisch gesehen) ist ja was anderes :)
mich würde aber mal interessieren wo du den code herhast.

@lokutos:
wieso ist mysql_insert_id() bei dir die erste anweisung? die muss nach dem ersten insert (bzw hier nach deinem 2.) :der: (nach der inkrement erhöhung), oder nicht? :>

DimpleX
26.07.2009, 16:45
wird also die user id bei dir per system vergeben?
das würde ja dann bedeuten das der eintrag uid nicht eingegeben werden muss sondern vom system per auto_inc.. vergeben wird

DimpleX


nothing es gibt kein fehler er macht seine eintrage in werberdaten, emaildaten, userdaten aber in kontodaten kommt nix an, es exestieren auch alle tabellen achja ich nutze das ganze ohne klamm anbindung sondern mit auto_increment

qog
26.07.2009, 16:48
naja dann hatte ich es doch richtig mit
db_query("INSERT INTO ".$db_prefix."_kontodaten (nickname,passwort,status,hinweis,kontostand) VALUES ('".$_POST['nickname']."','".md5($_POST['passwort_1'])."','1','','1000')");

DimpleX
26.07.2009, 16:51
es sollte mit auto_inc.. vorgabe sein kein leeres feld also mit ner nummer anfangen damit er weitervergeben kann

haste auch mal url wo man sich das anschauen kann?
am besten noch so info php & mysql version


DimpleX

Parl
26.07.2009, 16:51
Ich blicks irgendwie nicht ganz...was hast du denn verändert an dem kompletten Script? Es funktioniert doch so, wie mans auch runterlädt/installiert. Ohne nun genau zu wissen was du geändert hast kann man ja nur raten.

MFG

qog
26.07.2009, 16:59
das einsigste was ich da geändert habe ist das mit dem nickname das script ist leider nicht zugänglich da ich das auf meinem offline server laufen habe

Lokutos
26.07.2009, 16:59
@lokutos:
wieso ist mysql_insert_id() bei dir die erste anweisung? die muss nach dem ersten insert (bzw hier nach deinem 2.) :der: (nach der inkrement erhöhung), oder nicht? :>


das hab ich garnicht beachtet ich hab mir den ersten code genommen den er gepostet hatt und den bisschen aufgelistet und da ist mir das bei kontodaten mit nickname aufgefallen.

DimpleX
26.07.2009, 17:05
dann fasse ich mal zusammen

Localhost:127.0.1
vms1.2.x script ohne klamm anbindung (daher sollte es auch offline functionieren)

dennoch fehlt wie dein local host konficuriert hast , kann daran auch liegen

gibt genug freewebspace zum testen, man kann local und internet wirklich nicht vergleichen und bei kostenlos muss man nicht wirklich auf nen homewebserver zugreifen

gibt ja genügene angebote hier im forum wo du kostenlos auf echten webspace installieren kannst


eventuell nennen dir ja paar user welche hoster kostenlos&geeignet sind für vms


DimpleX


das einsigste was ich da geändert habe ist das mit dem nickname das script ist leider nicht zugänglich da ich das auf meinem offline server laufen habe

qog
26.07.2009, 17:11
nur ds wenn man das script auf seinem eigenen rechner laufen hat, das man dann nicht ständig die daten hochladen muss... und auf nem home server geht das in echtzeit und bei dem script ohne klammanbindung ist das mit dem nickname in kontodaten auch schon vorinstalliert ... :(

habe jetzt mal einen user manuel in die db eingetragen jetzt kann er bei der userer übersicht nicht in kontodaten zugreifen .... : auf der zeile bekommt er einen fehler:

$sql = db_query("SELECT nickname,kontostand FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"); $kontoinfo = mysql_fetch_array($sql);

jpwfour
26.07.2009, 18:47
Gut wären ja mal komplette Fehlermeldungen, also mal nach jedem db/mysql_query():


echo mysql_error();

:thumb:

Und evtl an den Anfang des Scriptes

error_reporting(E_ALL);

qog
26.07.2009, 19:03
mhh einfacher geht es wohl net ^^

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'FROM vms_kontodaten' at line 1

was bedeutet das?
habe PHP Version 5.2.8

Sebmaster
26.07.2009, 19:05
was bedeutet das?

Vermutlich fehlt davor ein "SELECT spalte1, spalte2...", oder du hast stattdessen irgendwas stehen, wo MySQL damit nichts anfangen kann. Z.B. ein "UPATE", "INSERT" etc.