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í
×
    včera 11:22 | Bezpečnostní upozornění

    Úřad pro ochranu osobních údajů řeší desítky stížností na jednotné měsíční hlášení zaměstnavatele, které stát spustil počátkem dubna. Systém, jenž má firmám odlehčit od desítek formulářů, nejenže výrazně zatížil jejich účetní oddělení, ale docházelo v něm i k únikům osobních dat zaměstnanců k firmám, kde nepracovali. Podle ministerstva práce a sociálních věcí stála za problémem technická chyba. „Incident se týkal několika stovek

    … více »
    Ladislav Hagara | Komentářů: 4
    včera 10:46 | Nová verze

    Byla vydána (𝕏, Bluesky) nová verze 22.0.0 open source webového aplikačního frameworku Angular (Wikipedie). Přehled novinek v příspěvku na blogu.

    Ladislav Hagara | Komentářů: 0
    včera 04:33 | Nová verze

    Vim Classic byl vydán ve verzi 8.3. Drew DeVault oznámil tento fork editoru Vim (verze 8.2.0148, tj. těsně před zavedením Vim9 skriptování) v březnu letošního roku. Důvodem forku bylo, že vývojáři editorů Vim a Neovim začali při vývoji využívat LLM.

    Ladislav Hagara | Komentářů: 5
    včera 03:44 | Komunita

    Open source konference DevConf.CZ 2026 proběhne 18. a 19. června v Brně na FIT VUT. Publikován byl program a spuštěna byla registrace.

    Ladislav Hagara | Komentářů: 0
    3.6. 19:44 | Nová verze

    Společnost JetBrains uvolnila verzi 2 svého open-source velkého jazykového modelu (LLM) pro vývojáře Mellum.

    Ladislav Hagara | Komentářů: 0
    3.6. 14:44 | IT novinky

    Probíhá konference Microsoft Build 2026. Microsoft představuje své novinky: kvantový čip Majorana 2, Surface Laptop Ultra a Surface RTX Spark Dev Box s NVIDIA RTX Spark, Intelligent Terminal, Coreutils for Windows (fork Rust Coreutils), AI modely MAI, AI agenta Scout, platformu pro agent-first zařízení Project Solara, …

    Ladislav Hagara | Komentářů: 0
    3.6. 12:44 | Nová verze

    Google Chrome 149 byl prohlášen za stabilní. Nejnovější stabilní verze 149.0.7827.53 přináší řadu novinek. Podrobný přehled v poznámkách k vydání. Vylepšeny byly také nástroje pro vývojáře.

    Ladislav Hagara | Komentářů: 0
    3.6. 10:55 | Nová verze

    Pluto.jl, reaktivní notebook pro programovací jazyk Julia, dospěl do verze 1.0.

    Ladislav Hagara | Komentářů: 4
    2.6. 13:44 | Nová verze

    Byla vydána nová verze 12.0.0 vizuálního programovacího jazyka Snap! (Wikipedie) inspirovaného jazykem Scratch (Wikipedie). Přehled novinek na GitHubu.

    Ladislav Hagara | Komentářů: 0
    2.6. 11:44 | IT novinky

    Počítačovou hru Gravity Circuit (ProtonDB) lze do 14. června do 19:00 získat na Steamu zdarma. Napořád.

    Ladislav Hagara | Komentářů: 0
    Které desktopové prostředí na Linuxu používáte?
     (12%)
     (8%)
     (2%)
     (15%)
     (31%)
     (4%)
     (6%)
     (3%)
     (15%)
     (26%)
    Celkem 1818 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    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: 1086×

    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.