Changeset 692


Ignore:
Timestamp:
02/22/06 01:32:23 (7 years ago)
Author:
anarcat
Message:

[project @ alternc: changeset 2005-05-27 20:10:18 by arnaud-lb]
baser les logins mysql sur l'id des utilisateurs Mantis bug: 464

Original author: arnaud-lb
Date: 2005-05-27 20:10:19

Location:
bureau
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • bureau/admin/sql_getparam.php

    r107 r692  
    11<?php 
    22/* 
    3  $Id: sql_getparam.php,v 1.3 2003/06/10 11:18:27 root Exp $ 
     3 $Id: sql_getparam.php,v 1.4 2005/05/27 20:10:18 arnaud-lb Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    4747<p><?php __("Your current settings are"); ?> : </p> 
    4848<table cellspacing="0" cellpadding="4"> 
    49                 <tr class="lst2"><th><?php __("Username"); ?></th><td><code><?php echo $mem->user["login"]; ?></code></td></tr> 
     49                <tr class="lst2"><th><?php __("Username"); ?></th><td><code><?php echo $r[0]["login"]; ?></code></td></tr> 
    5050                <tr class="lst1"><th><?php __("Password"); ?></th><td><code><?php echo $r[0]["pass"]; ?></code></td></tr> 
    5151                <tr class="lst2"><th><?php __("SQL Server"); ?></th><td><code><?php echo $mysql->server; ?></code></td></tr> 
    52                 <tr class="lst1"><th><?php __("Database"); ?></th><td><code><?php echo $mem->user["login"]; ?></code></td></tr> 
     52                <tr class="lst1"><th><?php __("Database"); ?></th><td><code><?php echo $r[0]["db"]; ?></code></td></tr> 
    5353</table> 
    5454 
  • bureau/class/m_mysql.php

    r662 r692  
    11<?php 
    22/* 
    3  $Id: m_mysql.php,v 1.30 2005/05/16 19:52:38 arnaud-lb Exp $ 
     3 $Id: m_mysql.php,v 1.31 2005/05/27 20:10:18 arnaud-lb Exp $ 
    44 ---------------------------------------------------------------------- 
    55 AlternC - Web Hosting System 
     
    137137    } 
    138138    $dbname=$mem->user["login"].($dbn?"_":"").$dbn; 
     139    if (strlen($dbname) > 64) { 
     140      $err->raise("mysql",12); 
     141      return false; 
     142    } 
    139143    $db->query("SELECT * FROM db WHERE db='$dbname';"); 
    140144    if ($db->num_rows()) { 
     
    145149    $db->query("SELECT login,pass FROM db WHERE uid='$cuid' LIMIT 0,1;"); 
    146150    if (!$db->num_rows()) { 
    147       $lo=$mem->user["login"]; 
     151      $lo=$mem->user["uid"]; 
    148152      $pa=""; 
    149153    } else { 
     
    156160    // give everything but GRANT on db.* 
    157161    // we assume there's already a user 
    158     $db->query("GRANT ALL PRIVILEGES ON `".$dbname."`.* TO '".$mem->user["login"]."'@'localhost'"); 
     162    $db->query("GRANT ALL PRIVILEGES ON `".$dbname."`.* TO '".$lo."'@'localhost'"); 
    159163    $db->query("CREATE DATABASE $dbname;"); 
    160164    exec("/usr/lib/alternc/db_create $cuid /var/alternc/db/$dbname"); 
     
    170174  function del_db($dbn) { 
    171175    global $db,$err,$mem,$cuid; 
    172     $login=$mem->user["login"]; 
    173176    $err->log("mysql","del_db",$dbn); 
    174177    if (!ereg("^[0-9a-z]*$",$dbn)) { 
     
    177180    } 
    178181    $dbname=$mem->user["login"].($dbn?"_":"").$dbn; 
    179     $db->query("SELECT * FROM db WHERE db='$dbname';"); 
     182    $db->query("SELECT login FROM db WHERE db='$dbname';"); 
    180183    if (!$db->num_rows()) { 
    181184      $err->raise("mysql",4); 
    182185      return false; 
    183186    } 
     187    $db->next_record(); 
     188    $login=$db->f("login"); 
     189 
    184190    // Ok, database exists and dbname is compliant. Let's proceed 
    185191    $db->query("DELETE FROM db WHERE uid='$cuid' AND db='$dbname';"); 
     
    187193    $db->query("SELECT COUNT(*) AS cnt FROM db WHERE uid='$cuid';"); 
    188194    $db->next_record(); 
    189     $db->query("REVOKE ALL PRIVILEGES ON `".str_replace('_', '\_', $dbname)."`.* FROM '".$mem->user["login"]."'@'localhost'"); 
     195    $db->query("REVOKE ALL PRIVILEGES ON `".$dbname."`.* FROM '".$login."'@'localhost'"); 
    190196    if ($db->f("cnt")==0) { 
    191       $db->query("DELETE FROM mysql.user WHERE User='".$mem->user["login"]."';"); 
     197      $db->query("DELETE FROM mysql.user WHERE User='".$login."';"); 
    192198      $db->query("FLUSH PRIVILEGES;"); 
    193199    } 
     
    218224    } 
    219225    $db->next_record(); 
    220     $login=$db->f("login"); 
    221226    $bck_mode=intval($bck_mode); 
    222227    $bck_history=intval($bck_history); 
     
    252257      return false; 
    253258    } 
     259    $db->next_result(); 
     260    $login=$db->f("login"); 
     261 
    254262    if (strlen($password)>16) { 
    255263      $err->raise("mysql",8); 
    256264      return false; 
    257265    } 
    258     $login=$mem->user["login"]; 
    259266    // Update all the "pass" fields for this user :  
    260267    $db->query("UPDATE db SET pass='$password' WHERE uid='$cuid';"); 
     
    280287      return false; 
    281288    } 
    282     $login=$mem->user["login"]; 
     289    $login=$mem->user["uid"]; 
     290    $dbname=$mem->user["login"]; 
    283291    // OK, creation now... 
    284     $db->query("INSERT INTO db (uid,login,pass,db) VALUES ('$cuid','".$mem->user["login"]."','$password','".$mem->user["login"]."');"); 
     292    $db->query("INSERT INTO db (uid,login,pass,db) VALUES ('$cuid','".$login."','$password','".$dbname."');"); 
    285293    // give everything but GRANT on $user.* 
    286     $db->query("GRANT ALL PRIVILEGES ON `".$mem->user["login"]."`.* TO '".$mem->user["login"]."'@'localhost' IDENTIFIED BY '".$password."'"); 
    287     $db->query("CREATE DATABASE ".$mem->user["login"].";"); 
    288     exec("/usr/lib/alternc/db_create $cuid /var/alternc/db/".$mem->user["login"]); 
     294    $db->query("GRANT ALL PRIVILEGES ON `".$dbname."`.* TO '".$login."'@'localhost' IDENTIFIED BY '".$password."'"); 
     295    $db->query("CREATE DATABASE ".$dbname.";"); 
     296    exec("/usr/lib/alternc/db_create $cuid /var/alternc/db/".$dbname); 
    289297    return true; 
    290298  } 
  • bureau/locales/en_US/LC_MESSAGES/mysql.po

    r662 r692  
    22# Copyright (c) 2002 the AlternC Development Team 
    33# <tech@alternc.org> 
    4 # $Id: mysql.po,v 1.8 2005/05/16 19:52:38 arnaud-lb Exp $ 
     4# $Id: mysql.po,v 1.9 2005/05/27 20:10:18 arnaud-lb Exp $ 
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: mysql.po,v 1.8 2005/05/16 19:52:38 arnaud-lb Exp $\n" 
     7"Project-Id-Version: $Id: mysql.po,v 1.9 2005/05/27 20:10:18 arnaud-lb Exp $\n" 
    88"POT-Creation-Date: 2002-06-12 19:00CEST\n" 
    99"PO-Revision-Date: 2002-06-16 13:50CEST\n" 
     
    4949 
    5050msgid "err_mysql_11" 
    51 msgstr "You have no database, vlick on 'Databases' to create the first one" 
     51msgstr "You have no database, click on 'Databases' to create the first one" 
     52 
     53msgid "err_mysql_12" 
     54msgstr "The data base name is too long (64 chars max)" 
    5255 
    5356msgid "help_sql_list_ok" 
  • bureau/locales/fr_FR/LC_MESSAGES/sql_manual.po

    r275 r692  
    22# Copyright (c) 2002 the AlternC Development Team 
    33# <tech@alternc.org> 
    4 # $Id: sql_manual.po,v 1.1 2004/05/24 20:01:36 anonymous Exp $ 
     4# $Id: sql_manual.po,v 1.2 2005/05/27 20:10:19 arnaud-lb Exp $ 
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: sql_manual.po,v 1.1 2004/05/24 20:01:36 anonymous Exp $\n" 
     7"Project-Id-Version: $Id: sql_manual.po,v 1.2 2005/05/27 20:10:19 arnaud-lb Exp $\n" 
    88"Report-Msgid-Bugs-To: i18n@alternc.org\n" 
    99"POT-Creation-Date: 2004-05-24 19:34+0200\n" 
     
    5555"en créer une" 
    5656 
     57msgid "err_mysql_12" 
     58msgstr "Le nom de la base de données est trop long (64 caractères maximum)" 
     59 
    5760msgid "General SQL Admin" 
    5861msgstr "Admin SQL Général" 
  • bureau/locales/sql_manual.po

    r459 r692  
    22# Copyright (c) 2002 the AlternC Development Team 
    33# <tech@alternc.org> 
    4 # $Id: sql_manual.po,v 1.2 2004/11/10 22:14:54 anonymous Exp $ 
     4# $Id: sql_manual.po,v 1.3 2005/05/27 20:10:18 arnaud-lb Exp $ 
    55msgid "" 
    66msgstr "" 
    7 "Project-Id-Version: $Id: sql_manual.po,v 1.2 2004/11/10 22:14:54 anonymous Exp $\n" 
     7"Project-Id-Version: $Id: sql_manual.po,v 1.3 2005/05/27 20:10:18 arnaud-lb Exp $\n" 
    88"Report-Msgid-Bugs-To: i18n@alternc.org\n" 
    99"POT-Creation-Date: 2004-05-24 19:34+0200\n" 
     
    5555"en créer une" 
    5656 
     57msgid "err_mysql_12" 
     58msgstr "Le nom de la base de données est trop long (64 caractères maximum)" 
     59 
    5760msgid "General SQL Admin" 
    5861msgstr "Admin SQL Général" 
Note: See TracChangeset for help on using the changeset viewer.