Перейти до

База данных на Mysql


Рекомендованные сообщения

Я всегда использовал стандартную схему хранения данных - файловую, но вот недавно попробовал и все нормально заработало с использованием модуля хранения в mysql. Отсюда вопрос: как правильно получать данные из конфигурации пользователя? Возможно есть какие то штатные возможности или надо использовать самописные схемы? Если можно покажите примеры.

Заранее спасибо.

Ссылка на сообщение
Поделиться на других сайтах

#!/usr/bin/php
<?
mysql_connect('localhost','root','bebebe');
mysql_select_db('stargazer');
$res=mysql_query("SELECT * FROM users");
@mkdir("/var/stargazer/users", 0755);
  while ($row = mysql_fetch_array($res)) {
 @ mkdir("/var/stargazer/users/".$row['login'], 0755);
  $fileName  = ("/var/stargazer/users/".$row['login']."/conf");
  $fileNamestat  = ("/var/stargazer/users/".$row['login']."/stat");
$data="Address=".$row['Address']."\n";
$data.="AlwaysOnline=".$row['AlwaysOnline']."\n";
$data.="CreationTime=0\n";
$data.="Credit=".$row['Credit']."\n";
$data.="CreditExpire=".$row['CreditExpire']."\n";
$data.="Down=".$row['Down']."\n";
$data.="Email=".$row['Email']."\n";
$data.="Group=".$row['StgGroup']."\n";
//$data.="Iface=".$row['Iface']."\n";
$data.="IP=".$row['IP']."\n";
$data.="NAS=127.0.0.1\n";
$data.="Note=".$row['Note']."\n";
$data.="Passive=".$row['Passive']."\n";
$data.="Password=".$row['Password']."\n";
$data.="Phone=".$row['Phone']."\n";
$data.="RealName=".$row['RealName']."\n";
$data.="Tariff=".$row['Tariff']."\n";
$data.="TariffChange=".$row['TariffChange']."\n";
$data.="Userdata0=".$row['Userdata0']."\n";
$data.="Userdata1=".$row['Userdata1']."\n";
$data.="Userdata2=".$row['Userdata2']."\n";
$data.="Userdata3=".$row['Userdata3']."\n";
$data.="Userdata4=".$row['Userdata4']."\n";
$data.="Userdata5=".$row['Userdata5']."\n";
$data.="Userdata6=".$row['Userdata6']."\n";
$data.="Userdata7=".$row['Userdata7']."\n";
$data.="Userdata8=".$row['Userdata8']."\n";
$data.="Userdata9=".$row['Userdata9']."\n";
  file_put_contents( $fileName,$data);
//stat
$stat="Cash=".$row['Cash']."\n";
$stat.="D0=".$row['D0']."\n";
$stat.="D1=".$row['D1']."\n";
$stat.="D2=".$row['D2']."\n";
$stat.="D3=".$row['D3']."\n";
$stat.="D4=".$row['D4']."\n";
$stat.="D5=".$row['D5']."\n";
$stat.="D6=".$row['D6']."\n";
$stat.="D7=".$row['D7']."\n";
$stat.="D8=".$row['D8']."\n";
$stat.="D9=".$row['D9']."\n";
$stat.="U0=".$row['U0']."\n";
$stat.="U1=".$row['U1']."\n";
$stat.="U2=".$row['U2']."\n";
$stat.="U3=".$row['U3']."\n";
$stat.="U4=".$row['U4']."\n";
$stat.="U5=".$row['U5']."\n";
$stat.="U6=".$row['U6']."\n";
$stat.="U7=".$row['U7']."\n";
$stat.="U8=".$row['U8']."\n";
$stat.="U9=".$row['U9']."\n";
$stat.="FreeMb=".$row['FreeMb']."\n";
$stat.="LastActivityTime=".$row['LastActivityTime']."\n";
$stat.="LastCashAdd=".$row['LastCashAdd']."\n";
$stat.="LastCashAddTime=".$row['LastCashAddTime']."\n";
$stat.="PassiveTime=".$row['PassiveTime']."\n";
  file_put_contents( $fileNamestat,$stat);
  }
mysql_free_result($res);

 

1. Сохрани этот скрипт допустим в /mysql_files

2. B OnConnect допиши строчку для запуска этого скрипта, только на скрипт не забудь выставить права 755. Я так делаю. В итоге при коннекте юзера дампица база в файло, и из файла обычными скриптами без всяких заморочек берутся данные с файлов. Мало того, если база слетит, у тя есть бекап :) У меня за 0,2 секунды 75 юзеров дампит, довольно таки быстро. На сервер нагрузки не замечал... Хотя в онлине сидит бывает и до 30-40. Я пытался написать скрипт на пхп, так то он сам по себе работает, а с СТГ нет, я имею ввиду скрипт OnConnect.

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...