abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
    dnes 00:55 | Pozvánky

    Spolek OpenAlt zve příznivce otevřených řešení a přístupu na 209. brněnský sraz, který proběhne tento pátek 16. května od 18:00 ve studentském klubu U Kachničky na Fakultě informačních technologií Vysokého učení technického na adrese Božetěchova 2/1. Jelikož se Brno stalo jedním z hlavních míst, kde se vyvíjí open source knihovna OpenSSL, tentokrát se OpenAlt komunita potká s komunitou OpenSSL. V rámci srazu Anton Arapov z OpenSSL

    … více »
    Ladislav Hagara | Komentářů: 0
    dnes 00:22 | Komunita

    GNOME Foundation má nového výkonného ředitele. Po deseti měsících skončil dočasný výkonný ředitel Richard Littauer. Vedení nadace převzal Steven Deobald.

    Ladislav Hagara | Komentářů: 0
    10.5. 15:00 | Zajímavý článek

    Byl publikován přehled vývoje renderovacího jádra webového prohlížeče Servo (Wikipedie) za uplynulé dva měsíce. Servo zvládne už i Gmail. Zakázány jsou příspěvky generované pomocí AI.

    Ladislav Hagara | Komentářů: 7
    9.5. 17:22 | Nová verze

    Raspberry Pi Connect, tj. oficiální služba Raspberry Pi pro vzdálený přístup k jednodeskovým počítačům Raspberry Pi z webového prohlížeče, byla vydána v nové verzi 2.5. Nejedná se už o beta verzi.

    Ladislav Hagara | Komentářů: 3
    9.5. 15:22 | Komunita

    Google zveřejnil seznam 1272 projektů (vývojářů) od 185 organizací přijatých do letošního, již jednadvacátého, Google Summer of Code. Plánovaným vylepšením v grafických a multimediálních aplikacích se věnuje článek na Libre Arts.

    Ladislav Hagara | Komentářů: 0
    8.5. 19:22 | Nová verze

    Byla vydána (𝕏) dubnová aktualizace aneb nová verze 1.100 editoru zdrojových kódů Visual Studio Code (Wikipedie). Přehled novinek i s náhledy a videi v poznámkách k vydání. Ve verzi 1.100 vyjde také VSCodium, tj. komunitní sestavení Visual Studia Code bez telemetrie a licenčních podmínek Microsoftu.

    Ladislav Hagara | Komentářů: 0
    8.5. 18:00 | Nová verze

    Open source platforma Home Assistant (Demo, GitHub, Wikipedie) pro monitorování a řízení inteligentní domácnosti byla vydána v nové verzi 2025.5.

    Ladislav Hagara | Komentářů: 0
    8.5. 01:22 | Nová verze Ladislav Hagara | Komentářů: 0
    8.5. 00:55 | Zajímavý projekt

    PyXL je koncept procesora, ktorý dokáže priamo spúštat Python kód bez nutnosti prekladu ci Micropythonu. Podľa testov autora je pri 100 MHz približne 30x rýchlejší pri riadeni GPIO nez Micropython na Pyboard taktovanej na 168 MHz.

    vlk | Komentářů: 0
    7.5. 19:44 | Nová verze

    Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.

    Ladislav Hagara | Komentářů: 0
    Jaký filesystém primárně používáte?
     (57%)
     (1%)
     (8%)
     (22%)
     (4%)
     (2%)
     (3%)
     (1%)
     (1%)
     (3%)
    Celkem 583 hlasů
     Komentářů: 26, poslední 8.5. 09:58
    Rozcestník

    Dotaz: Vytvoření mysql uživatele pomocí php

    4.9.2010 14:21 caszo
    Vytvoření mysql uživatele pomocí php
    Přečteno: 999×

    Zdravím, snažím se pomocí PHP vytvořit v mysql uživatele (mám normálně rootovská práva)...

    Zkoušel jsem toto:

    $sql = 'CREATE USER \''.$login.'\'@\'localhost\' IDENTIFIED BY \''.$pass.'\';GRANT USAGE ON *.* TO \''.$login.'\'@\'localhost\' IDENTIFIED BY \''.$pass.'\'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 `'.$login.'`;GRANT ALL PRIVILEGES ON `'.$login.'`.* TO \''.$login.'\'@\'localhost\';';

    Systém mi vyhodil že přidáno ale ani po obnově oprávnění v mysql uživatele nenajdu.... Díky za rady


    Řešení dotazu:


    Odpovědi

    Jendа avatar 4.9.2010 14:32 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Nedělá se tam ještě nějaké přídavné escapování, když dotaz databázi pokládáš?
    Jendа avatar 4.9.2010 14:34 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Respektive jestli mysql_query($sql); vrátí 1 a pokud ne, tak si vypiš výstup funkce mysql_error();.
    4.9.2010 14:47 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php

    http://temp.centrumpc.net/fc.txt po zavolání fce se mi nic nevypíše (kromě echa sql a to je:

    CREATE USER 'test'@'localhost' IDENTIFIED BY 'heslo123';GRANT USAGE ON *.* TO 'test'@'localhost' IDENTIFIED BY 'heslo123'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 `test`;GRANT ALL PRIVILEGES ON `test`.* TO 'test'@'localhost';

    4.9.2010 15:22 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    mysql_error(); mi vrací: 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 USAGE ON *.* TO 'aa'@'localhost' IDENTIFIED BY 'aa'WITH MAX_QUERIES_PER_HO' at line 1
    4.9.2010 16:35 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php

    IDENTIFIED BY 'aa'WITH MAX_QUERIES_PER_HO'
    Nechybi mezi 'aa' a WITH mezera? (tedy IDENTIFIED BY \''.$pass.'\'<tady>Chybejici_mezera</tady>WITH MAX_QUERIES_PER_HOUR 0)

    Dejv

    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    4.9.2010 21:59 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Nene, nepomohlo... :(
    4.9.2010 22:20 Dejv | skóre: 37 | blog: Jak ten blog nazvat ... ? | Ostrava
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php

    Pak uz me napada jedine jestli neni problem v tech "dvou hvezdickach". Misto

    GRANT USAGE ON *.* TO \''.$login...
    pouzit
    GRANT USAGE ON * TO \''.$login...

    Dejv

    Pevně věřím, že zkušenější uživatelé mě s mými nápady usměrní a pošlou tam, kam tyto nápady patří...
    5.9.2010 00:50 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    taky nic ... :o(
    Jendа avatar 5.9.2010 00:52 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    A když ten SQL příkaz spustíš pomocí phpMyAdmina (máš-li) nebo řádkového MySQL klienta, tak to funguje?
    5.9.2010 12:06 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php

    Váš SQL-dotaz byl úspěšně vykonán

    CREATE USER 'aa'@'localhost' IDENTIFIED BY 'aa';# MySQL vrátil prázdný výsledek (tj. nulový počet řádků).
    GRANT USAGE ON * . * TO 'aa'@'localhost' IDENTIFIED BY 'aa' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;# MySQL vrátil prázdný výsledek (tj. nulový počet řádků).
    CREATE DATABASE IF NOT EXISTS `aa` ;# Ovlivněné řádky: 1
    GRANT ALL PRIVILEGES ON `aa` . * TO 'aa'@'localhost';# MySQL vrátil prázdný výsledek (tj. nulový počet řádků).

    SQL kod (v php nejde):

    CREATE USER 'aa'@'localhost' IDENTIFIED BY 'aa';GRANT USAGE ON *.* TO 'aa'@'localhost' IDENTIFIED BY 'aa' 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 `aa`;GRANT ALL PRIVILEGES ON `aa`.* TO 'aa'@'localhost';

    Jendа avatar 5.9.2010 12:10 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Takže
    if (mysql_query("CREATE USER 'aa'@'localhost' IDENTIFIED BY 'aa';GRANT USAGE ON *.* TO 'aa'@'localhost' IDENTIFIED BY 'aa' 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 `aa`;GRANT ALL PRIVILEGES ON `aa`.* TO 'aa'@'localhost';")) {
       echo ok;
    }
    napíše OK a databáze se nevytvoří? Zkusil bych se podívat na takové ty triviální chyby jako jestli se v tom skriptu připojuješ ke správnému databázovému stroji a tak :-).
    5.9.2010 12:14 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php

    function addmysqluser($user,$login,$pass)
    {
    $sql = 'CREATE USER \''.$login.'\'@\'localhost\' IDENTIFIED BY \''.$pass.'\';GRANT USAGE ON *.* TO \''.$login.'\'@\'localhost\' IDENTIFIED BY \''.$pass.'\' 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 `'.$login.'`;GRANT ALL PRIVILEGES ON `'.$login.'`.* TO \''.$login.'\'@\'localhost\';';
    $akce = mysql_query($sql);
    if($akce) echo "<div class=\"ok\"> <img src=\"data/im/ok.png\" alt=\"\" /> Podařilo se mi uživatele úspěšně přidat! Vytvátím DB...</div>";
    else echo mysql_error();            
    echo "<br /><br />";
    echo $sql;
    }

    Jendа avatar 5.9.2010 12:19 Jendа | skóre: 78 | blog: Jenda | JO70FB
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Spíš jestli bys to mohl spustit bez těch proměnných, s natvrdo zadanými údaji. Třeba máš zapnutou nějakou hrůzu typu magic_quotes.
    5.9.2010 12:30 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    zkusil sem to os mi poslal výš a ok se nevyíše... takže stejná chyba
    5.9.2010 12:31 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    může to být tím že už mám vybranou DB ve spojení?
    4.9.2010 14:37 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Co tím máš na mysli?
    5.9.2010 13:55 xHire | skóre: 21 | blog: Linuxovník
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Nevím, zda to může mít vliv, ale PHPčková mysql_query vykonává pouze jeden SQL dotaz, takže ten velký uvedený dotaz bych rozdělil na 4 samostatné. Mám ten dojem, že i phpMyAdmin to tak dělá.

    Také ve mě zrovna nebudí důvěru nastavování hesla v GRANT příkazu. To tam podle mě vůbec nepatří, a to nejen vzhledem k logice věci, že to heslo už uživatel nastavené má.
    Kryptoměny a bločenka.
    Tarmaq avatar 6.9.2010 14:47 Tarmaq | skóre: 39
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Presne to same me taky napadlo, mela by to byt ochrana pred SQL Injection.
    mysql_query() sends a unique query (multiple queries are not supported) to the currently active database on the server that's associated with the specified link_identifier.
    viz. dokumentace
    Don't panic!
    6.9.2010 15:09 caszo
    Rozbalit Rozbalit vše Re: Vytvoření mysql uživatele pomocí php
    Jes, díky! :)

    Založit nové vláknoNahoru

    Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

    ISSN 1214-1267   www.czech-server.cz
    © 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.