ANTICHAT Forum
HOME FORUMS MEMBERS RECENT POSTS LOG IN  
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Помогите разобратся с циклами
  #1  
Старый 22.01.2007, 01:28
Foster
Познающий
Регистрация: 14.07.2005
Сообщений: 62
С нами: 10960703

Репутация: 6
По умолчанию Помогите разобратся с циклами

Предположим в таблице forum есть поля forum_id, forum_name, forum_moderators.
forum_id - номер форума;
forum_name - имя форума
forum_moderators - модераторы форума (admin, admin2, user, lamer)
Вобщем я пытался накалбасить скриптик каторый бы обновлял обновлял все разделы сразу.. но так ничего и не вышло, может быть ваша помощь мне поможет?!
Вот кусок кода
PHP код:
<?

...

//Сначала получаем список форумов и их модераторов
$query = mysql_query("SELECT * FROM `forum` ORDER by `forum_id` ASC");
$Xquery = mysql_fetch_array($query);
$row = mysql_num_rows($query);
echo 
'<form name=update>';
//затем используем циклы для вывода на экран всех форумов и их модеров

for($y=1; $y<=$row; $y++)
{
 echo
'<tr bgcolor="000000"><td><font color="FF9900"><b>'.$Xquery['forum_id'].'';
 echo
'<td><font color="FF9900"><b>'.$Xquery['forum_name'].'</td>';
 echo
'<td style="width:13"><font color="FF9900"><input type="hidden" name="forum_id" value="'.$Xquery['forum_id'].'"><input type="text" name="forum_moderators" value="'.$Xquery['forum_moderators'].'">';
 
$Xquery = mysql_fetch_array($query);
}
echo 
'<input type=submit value=update>';
//Вот отсюда собственно и начинаются проблемы, мне нужно что бы обновился КАЖДЫЙ раздел форума, а не один
$update = mysql_query("UPDATE `forum` SET `forum_moderators` = '".$forum_moderators."' WHERE `forum_id` = '".$forum_id."'")

...

?>
Заранее благадарствую!

Последний раз редактировалось nc.STRIEM; 22.01.2007 в 01:58..
 
Ответить с цитированием

  #2  
Старый 22.01.2007, 02:19
Foster
Познающий
Регистрация: 14.07.2005
Сообщений: 62
С нами: 10960703

Репутация: 6
По умолчанию

и ещё одно... можно ли с помощью пхп шифровать информацию, не хешировать а именно зашифровывать..? например я хочу зашифровать при помощи пароля текст в файле mess.txt а потом таким же образом востановить...
ЗЫ: base64_encode, md5, crypt не предлогать =)

Нашол кое че, да вот помоему чето не робит

PHP код:
// encode function - encodes text to quet sequre text 

// 

function encrypt( &$ftext, $fkey='fenyxxxx' ){ 

$prevchr=0; 

$answ=''; 


if (
$im = strlen($ftext)) { 

$k=0; 


for(
$i=0;$i<$im;$i++){ 

$thischr = ord(substr($ftext,$i,1)) + $prevchr; 

if(isset(
$fkey[$k])){ 

$key_chr=ord($fkey[$k])+ord($fkey[$k+1])+ord($fkey[$k+2])-ord($fkey[$k+3]);} 

else{
$k=0;$key_chr=ord($fkey[$k]);$fkey=substr($fkey,1).$fkey[0]; 

}; 

$key_chr=$key_chr+$old_chr^$i; 

$old_chr = checkbit($key_chr, 7) + 

checkbit($key_chr, 64)*$fkey[1] + 

checkbit($key_chr, 1)*$fkey[2] + 

checkbit($key_chr, 32)*$fkey[3] + 

checkbit($key_chr, 2)*$fkey[4] + 

checkbit($key_chr, 8)*$fkey[5] + 

checkbit($key_chr, 128)*$fkey[7] + 

checkbit($key_chr, 4)*$fkey[6]; 


$k++; $thischr=$thischr+$key_chr; 

$prevchr = checkbit($thischr, 16) + 

checkbit($thischr, 64)*2 + 

checkbit($thischr, 1)*4 + 

checkbit($thischr, 32)*8 + 

checkbit($thischr, 2)*16 + 

checkbit($thischr, 8)*32 + 

checkbit($thischr, 128)*64 + 

checkbit($thischr, 4)*128; 


$answ .= chr($prevchr); 

} 

} 

return 
$answ; 

} 


// 

// decode function. decodes encoded data 

// 

function decrypt( &$ftext, $fkey='fenyxxxx' ){ 

$prevchr=0; 

$old_prevchr=0; 

$answ=''; 


if (
$im = strlen($ftext)) { 

$k=0; 

for(
$i=0;$i<$im;$i++){ 

$thischr = ord(substr($ftext,$i,1)); 

if(isset(
$fkey[$k])){$key_chr=ord($fkey[$k])+ord($fkey[$k+1])+ord($fkey[$k+2])-ord($fkey[$k+3]);}else{$k=0;$key_chr=ord($fkey[$k]);$fkey=substr($fkey,1).$fkey[0];}; 


$key_chr=$key_chr+$old_chr^$i; 

$old_chr = checkbit($key_chr, 7) + 

checkbit($key_chr, 64)*$fkey[1] + 

checkbit($key_chr, 1)*$fkey[2] + 

checkbit($key_chr, 32)*$fkey[3] + 

checkbit($key_chr, 2)*$fkey[4] + 

checkbit($key_chr, 8)*$fkey[5] + 

checkbit($key_chr, 128)*$fkey[7] + 

checkbit($key_chr, 4)*$fkey[6]; 


$k++; 


$prevchr = checkbit($thischr, 4) + 

checkbit($thischr, 16)*2 + 

checkbit($thischr, 128)*4 + 

checkbit($thischr, 32)*8 + 

checkbit($thischr, 1)*16 + 

checkbit($thischr, 8)*32 + 

checkbit($thischr, 2)*64 + 

checkbit($thischr, 64)*128; 

$prevchr=$prevchr-$key_chr; 

$answ .= chr($prevchr-$old_prevchr); 

$old_prevchr = $thischr; 

} 

} 

return 
$answ; 

} 


function 
checkbit( $num1, $num2 ) { 

return ( 
$num1 & $num2 ? 1 : 0 ); 

} 

Последний раз редактировалось Foster; 22.01.2007 в 04:14..
 
Ответить с цитированием

  #3  
Старый 22.01.2007, 09:51
flipper
Участник форума
Регистрация: 05.09.2006
Сообщений: 184
С нами: 10358109

Репутация: 203
По умолчанию

Цитата:
Сообщение от Foster  
и ещё одно... можно ли с помощью пхп шифровать информацию, не хешировать а именно зашифровывать..? например я хочу зашифровать при помощи пароля текст в файле mess.txt а потом таким же образом востановить...
ЗЫ: base64_encode, md5, crypt не предлогать =)
Есть функции ENCODE и DECODE
Код:
$CCKey="se2sdlg34ejuc4uk4tr4ic47sjm2yh7o9e80sp80r8o0d8uc7t76i6on68s";
$UpdateSQL="UPDATE $ClientsTableName SET CCNum=ENCODE('$CCNum', '$CCKey') WHERE ClientID='$ClientID'";
$rs = $conn->Execute("SELECT *, DECODE(CCNum, '$CCKey') AS DecodeCCNum FROM $ClientsTableName WHERE ClientID='$ClientID'");

Последний раз редактировалось flipper; 22.01.2007 в 09:55..
 
Ответить с цитированием

  #4  
Старый 22.01.2007, 13:37
D1mOn
Постоянный
Регистрация: 02.10.2005
Сообщений: 490
С нами: 10845026

Репутация: 212
По умолчанию

Foster напиши свой алгоритм шифрования =)
 
Ответить с цитированием

  #5  
Старый 22.01.2007, 14:15
Raz0r
Участник форума
Регистрация: 07.01.2007
Сообщений: 259
С нами: 10179446

Репутация: 41
По умолчанию

Код:
//Вот отсюда собственно и начинаются проблемы, мне нужно что бы обновился КАЖДЫЙ раздел форума, а не один
$update = mysql_query("UPDATE `forum` SET `forum_moderators` = '".$forum_moderators."' WHERE `forum_id` = '".$forum_id."'")
Запихай $update в foreach
 
Ответить с цитированием

  #6  
Старый 22.01.2007, 15:54
blackybr
♠ ♦ ♣ ♥
Регистрация: 18.05.2006
Сообщений: 1,828
С нами: 10516826

Репутация: 3742


По умолчанию

PHP код:
UPDATE `forum` SET `forum_moderators` = '".$forum_moderators."' WHERE 1 
=) по идее должно обновиться все
__________________
Привет! Меня зовут Джордж, и я хотел бы рассказать вам про реинкарнацию (ц) 2x2
 
Ответить с цитированием

  #7  
Старый 22.01.2007, 15:59
Raz0r
Участник форума
Регистрация: 07.01.2007
Сообщений: 259
С нами: 10179446

Репутация: 41
По умолчанию

вопрос - а нахер делать модераторов если ты их будешь ставить модераторами во ВСЕ разделы, создай просто группу с доступом модерским и делов-то
 
Ответить с цитированием

  #8  
Старый 22.01.2007, 15:59
blackybr
♠ ♦ ♣ ♥
Регистрация: 18.05.2006
Сообщений: 1,828
С нами: 10516826

Репутация: 3742


По умолчанию

Насчет обратимого шифрования, я так понял именно оно тебе нужно. предлагаю так
PHP код:
<?php 
// Зашифровываем пароль 
$user_password = "31337"; 
$key = "Это секретный ключ"; 
// Шифруем пароль с использованием ключа $key 
$user_crypt = mcrypt_ecb(MCRYPT_3DES, $key, $maks_password, 
MCRYPT_ENCRYPT); 
echo 
"Зашифрованный пароль - ".$user_crypt; 
// Расшифровываем пароль 
$user_crypt= mcrypt_ecb (MCRYPT_3DES, $key, $user_crypt, 
MCRYPT_DECRYPT); 
echo 
"Расшифрованный пароль - ".$user_crypt; 
?>
__________________
Привет! Меня зовут Джордж, и я хотел бы рассказать вам про реинкарнацию (ц) 2x2
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
кто играет в www.ganjawars.ru ??? помогите kuppher Болталка 12 26.07.2008 23:38
ПомогитЕ !!! подалуста найти кряк гейлордфакерЪ Болталка 2 30.08.2007 14:48
ПоМоГиТе! ПЛЗ!!! farik.aka Уязвимости Mail-сервис 1 17.09.2006 13:00



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.