ERLEDIGT
NEIN
NEIN
ANTWORTEN
5
5
ZUGRIFFE
464
464
EMPFEHLEN
-
29.05.05 13:32 #1
- Registriert seit
- Jan 2005
- Ort
- Regensburg [Bayern @ Mars]
- Beiträge
- 167
hi,
ich bin gerade dabei, ein forumscript zu coden. Nun, das ist nicht weiter schlimm. Die Datenbank und Tabellen werden erfolgreich erstellt...
Nun möchte ich einen User "Admin" eintragen. Ein paar if strukturen verhindern dass der User doppelt eingetragen wird, oder dass die Daten verändert werden.
Aber das funktioniert nicht. Wenn die Daten vorhanden sind, sollte es eigentlich nicht mehr eingetragen werden. Stattdessen habe ich 20 User namens Admin in der Datenbank. Da ich schon sehr müde war als ich das gecodet habe kann es sein dass ich völligen Mist gebaut habe. Auch nach 5 maligem durchsuchen und neucoden kam ich immer noch nicht drauf was da falsch ist.
Ich hoffe ihr könnt mir helfen, denn viele Augen sehen bekanntlich mehr als zwei.
Hier der PHP code:
Noch ein Hinweis am schluss:PHP-Code:<?
require($_SERVER['DOCUMENT_ROOT']."/i-page/settings/settings.inc.php");
require($_SERVER['DOCUMENT_ROOT']."/i-page/settings/functions.inc.php");
//passwort generieren
$pwd = pwd_create();
$connect = mysql_connect("localhost");
$string = "select * from ".$prfix."i_page_user".$suffix." where `username` = `Admin`";
$ergebnis = mysql_db_query($dbname, $string, $connect);
if($ergebnis == true) {
$user_exists = true;
$message5 = "User Admin ist schon vorhanden und wurde <u>nicht</u> eingetragen";
}
else {
$insert = "INSERT INTO ".$prfix."i_page_user".$suffix."(username, passwort, locked, rechte)
values ('Admin', $pwd, 'false', 1)";
$result = mysql_db_query($dbname, $insert, $connect);
if($result) {
$user_exists = true;
$message5 = "User Admin war nicht vorhanden und wurde eingetragen";
}
else{
$user_exists = false;
$message5 = "User Admin war nicht vorhanden und wurde nicht eingetragen";
}
}
echo "$message5";
?>
Alle Variablen enthalten die richtigen Werte.
Ich danke allen, die sich zumindest den Text durchgelesen haben =)
und mir helfen wollen.
mfg
Chris
-
....besser so:Code :
1
`username` = `Admin`
...und dann nicht nachschauen, ob die Abfrage erfolgreich(true) ist, sondern ob sie ein Ergebnis geliefert hat(mysql_num_rows())Code :1
`username` = 'Admin'
-
du musst doch auch noch das pw und den benutzernamen angeben oder?$connect = mysql_connect("localhost");
-
29.05.05 14:12 #4
- Registriert seit
- Jan 2005
- Ort
- Regensburg [Bayern @ Mars]
- Beiträge
- 167
ich hab meinen Home PC zu einem Server umgewandelt und ich connecte über localhost ohne passwort und so, da ich es net anders eingestellt habe...
die verbindung klappt, sonst hätte ich ja nicht 20 gleiche einträge in der Datenbank
Danke für den Tipp mit dem num_rows...
ich werds mal ausprobieren
-
PHP-Code:
<?php
require $_SERVER['DOCUMENT_ROOT'].'/i-page/settings/settings.inc.php';
require $_SERVER['DOCUMENT_ROOT'].'/i-page/settings/functions.inc.php';
$connect = mysql_connect('localhost');
$query = "
SELECT
1
FROM
`".$prfix."i_page_user".$suffix."`
WHERE
`username` = 'Admin'
";
if( mysql_num_rows(mysql_db_query($dbname, $query, $connect)) > 0 ) {
$user_exists = true;
$message5 = 'User Admin ist schon vorhanden und wurde <em>nicht</em> eingetragen';
} else {
$query = "
INSERT INTO
`".$prfix."i_page_user".$suffix."`
SET
`username` = 'Admin',
`passwort` = '".pwd_create()."',
`locked` = 'false',
`rechte` = 1
";
if( !$result = mysql_db_query($dbname, $query, $connect) ) {
$user_exists = true;
$message5 = 'User Admin war nicht vorhanden und wurde eingetragen';
} else {
$user_exists = false;
$message5 = 'User Admin war nicht vorhanden und wurde nicht eingetragen';
}
}
echo $message5;
?>Nein, selbst die Angabe des Servers ist optional (siehe mysql_connect()-Funktion).du musst doch auch noch das pw und den benutzernamen angeben oder?
-
29.05.05 14:23 #6
- Registriert seit
- Jan 2005
- Ort
- Regensburg [Bayern @ Mars]
- Beiträge
- 167
Ihr seid echt klasse... =)
habs jetzt so gelöst, vielleicht kann jemand anders damit was anfangen:
und es funktioniert einwandfreiPHP-Code:$string = "select * from ".$prfix."i_page_user".$suffix." where `username` = 'Admin'";
$ergebnis = mysql_db_query($dbname, $string, $connect);
$zahl = mysql_num_rows($ergebnis);
if($zahl < 1) {
$insert = "INSERT INTO ".$prfix."i_page_user".$suffix."(username, passwort, locked, rechte)
values ('Admin', $pwd, 'false', 1)";
$result = mysql_db_query($dbname, $insert, $connect);
if($result) {
$message5 = "User Admin war nicht Vorhanden und wurde eingetragen";
$user_exists = true;
}
else {
$user_exists = false;
$message5 = "User Admin war nicht vorhanden und wurde <u>nicht</u> eingetragen";
}
}
else {
$message5 = "User Admin war schon Vorhanden und wurde <u>nicht</u> eingetragen";
}
echo $message5;
Danke an alle die mir geholfen haben
mfg
chris
Ähnliche Themen
-
Daten aus Formular in MySQL-DB eintragen
Von Zenti im Forum PHPAntworten: 18Letzter Beitrag: 15.07.10, 15:35 -
Daten per Schleife in MySQL Tabelle eintragen.
Von Xenoido im Forum PHPAntworten: 6Letzter Beitrag: 31.08.08, 17:21 -
[MYSQL] ausgelesene Daten in andere DB eintragen
Von Pretorian im Forum Relationale DatenbanksystemeAntworten: 17Letzter Beitrag: 25.07.08, 19:09 -
Daten zeitversetzt in MySQL eintragen
Von Memfis im Forum PHPAntworten: 11Letzter Beitrag: 02.08.04, 12:02 -
Daten werden nicht eintragen mysql
Von Wolf of Doom im Forum PHPAntworten: 3Letzter Beitrag: 25.03.04, 00:22





Zitieren
Login






[PHP][Snippet] Array zu XML konvertieren