my sql Benutzer hinzufügen

soo ich hatte die variable $sql groß geschrieben -.- habs jez korigiert und er gibt das aus


Code:
CREATE USER \'leon\'@\'localhost\' IDENTIFIED BY \'1234\';GRANT USAGE ON *.* TO \'leon\'@\'localhost\' IDENTIFIED BY \'1234\' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;CREATE DATABASE IF NOT EXISTS `leon`; GRANT ALL PRIVILEGES ON `leon`.* TO \'leon\'@\'localhost\';


und in der ZUD.txt stehen die zugangsdaten und die verbindung drinn

Code:
<?php
$db_server="localhost";
$db_user="root";
$db_passwort="";
$verbindung = mysql_connect($db_server,$db_user,$db_passwort);
?>

und ja ich habe in root kein passwort drinn da die s nur zum testen ist
 
das ist ein generierter code von php my admin

also ich schätze mal nicht das das falsch sein könnte
Und ich dachte es sei die Auswertung von $sql.
Wie generierst du das SQL in phpMaAdmin? Für mich sieht es aus als ob das Statement generiert wurd um in einfachen Anführungszeichen zu setzen. Du hast ihn aber in doppelten - darum die \.

Egal. In der Doku zu MySQL sehe ich die \ nicht.
 
ich erstelle einfach einen x belibigen benutzer dazu zeigt er mir dann den sql code an diesen kann man halt in php ausgeben und den habe ich dann eingefügt und die benutzer daten durch variablen ersezt
 
Im Moment blick' ich gar nicht mehr durch, was du eigentlich machen willst und bisher schon gemacht hast.
Den SQL-Code hast du dir quasi von PhpMyAdmin generieren lassen und ihn dann mit Variablen gefüllt?
Wenn du den SQL-Befehl an mysql_query übergibst, aber nichts passiert ... dann ist was schief gelaufen.
Und warum speicherst du deinen MySQL-Zugang in einer .txt-Datei, die jeder auf einem Webserver (normalerweise) lesen kann?

Was passiert, wenn du das ausführst?
PHP:
$ergebnis = mysql_query( $abfrage, $verbindung) or die(mysql_error());

EDIT: Yaslaw war schneller.
 
Also
Step 1: Zerlege das SQL in 4 SQLs und schiesse sie einzeln gegen die Datenbank. Somit kann man besser herausfinden welcher der 4 Befehle Probleme macht: CREATE USER / GRANT USAGE / CREATE TABLE / GRANT ALL PRIVILEGES

Step 2: Schalte die Fehlermeldungen ein: error_reporting(E_ALL);

Step 3: Zwinge MySQL dazu eine allfällige Fehlermeldung auszuwerfen mysql_query($sql) or die(mysql_error());

Step 4: phpAdmin ist eh Schrott - ergo, versuch es mal ohne die \ (Laut MySQL-Doku hats da keine \. Und ich glaube der MySQL-Doku mehr als phpMyAdmin)

Step 5: Jetzt testen

Step 6: Fehlermedungen hier publizieren
 
@erik s. hatte ich nicht erwähnt das dies nur zum testen dient. es ist sowieso unsicher da ich root kein passwort gegeben hast wenn du schon auf der txt rumhackst
 
hmm ok er macht alles außer die datenbank für den user zu erstellen statdessen gibt er diesen fehlercode aus



Code:
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 'GRANT ALL PRIVILEGES ON `leon`.* TO 'leon'@'localhost'' at line 2


doch irgentwie finde ich da keinen fehler



Edit: ha ich habe den befeh nochmal in 2 befehle aufgeteilt erst die datenbank erstellen und danach den grant befehl
 
Zuletzt bearbeitet:
Zurück