Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум MySQL

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум (новые сообщения вниз) Структурный форум

тема: Скрипт для переписи 2

Сообщения:  [1-10]    [11-20]  [21-28] 

 
 автор: kasmanaft   (29.03.2006 в 15:21)   письмо автору
 
   для: kasmanaft   (28.03.2006 в 21:34)
 

оказывается у меня не тот номер был записан :)
исправил...

   
 
 автор: kasmanaft   (28.03.2006 в 21:34)   письмо автору
 
   для: Бамси   (27.03.2006 в 17:54)
 

у меня имеется :)
можешь в профиле посмотреть... я давно уже хотел, а как глянул в твой профиль - не нашел и расхотел :)

   
 
 автор: Бамси   (27.03.2006 в 17:54)   письмо автору
 
   для: kasmanaft   (27.03.2006 в 07:46)
 

Вообщем все прекрастно работает, я бы с тобой бы пообщялся по ICQ нащет мелочей, если она имееться.

   
 
 автор: kasmanaft   (27.03.2006 в 07:46)   письмо автору
 
   для: Бамси   (26.03.2006 в 23:58)
 

а счас наверно ошибка здесь:
if (($qs>=1) && ($qs%5 != 0)) echo "</td><td width=6.25%></td><td>";

больше или равно... попробуй так сделай..

и насчет сортировки... наверно верни, как было... тот способ, что я преводил сортирует элементы как строки...
объясню :)
допустим у нас есть массив "25, 12, 121"
если отсортировать его как числа то мы получим 12, 25, 121
а если как строки то 12, 121, 25
но в твом случае, по-моему, лучше отсортировать именно как строки... иначе результат тебя потом может немного удевить :)

   
 
 автор: Бамси   (26.03.2006 в 23:58)   письмо автору
 
   для: kasmanaft   (26.03.2006 в 17:58)
 

asort не помог, а после else теперь нет пробела после первого столбика, но зато появился пробел после последнего столбика... И это только в первой строчке...
А не асорт заработал, он просто сортирует только буквы, надо чтоб еще и цыфры сортировал по возрастанию.

Вообщем с сортировкой разобрался, зделал так

...

asort ($worlds, SORT_STRING);
asort ($worlds, SORT_NUMERIC);
echo "<table width=100%><tr><td>"; 
foreach ($worlds as $world_name => $arr) 

...



А что делать с тем что не отображаеться 5 столбик я не знаю :(

   
 
 автор: kasmanaft   (26.03.2006 в 17:58)   письмо автору
 
   для: Бамси   (25.03.2006 в 16:14)
 

долго смотрел на етот скрипт и не мог понять, почему все же не отображается этот пятый столбик... а оказывается все просто :)
нужно чуть-чуть подправить IF

...

    if (empty($qs)) $qs = 1; 
         else  $qs++;
...

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

...

asort ($worlds, SORT_STRING);
echo "<table width=100%><tr><td>"; 
foreach ($worlds as $world_name => $arr) 
{
...

   
 
 автор: Бамси   (25.03.2006 в 16:14)   письмо автору
 
   для: kasmanaft   (25.03.2006 в 08:33)
 

Хм.. получаеться все отлично :) Бооольшое спасибо. Щяс буду делать форму для дополнения, а потом самое сложное админку... :) Как только доделаю форму дополнения выложу сюда проверишь :)

ЗЫ Хотя нет не совсем все хорошо, нашел ошибку, в первой строчки 5-ый столбик не отображаеться, хотя во второй строчки, третьей.... и т.д. все 5 столбиков отображаються.


<? 
include "config.php"
$query "select * from users order by CharsNick ASC"
$thm mysql_query($query); 

while(
$themes mysql_fetch_array($thm)) 

    
$CharsNick trim($themes['CharsNick']); 
    
$CharsWorld trim($themes['CharsWorld']); 
    
$worlds [$CharsWorld][] = "$CharsNick"

echo 
"<table width=100%><tr><td>"
foreach (
$worlds as $world_name => $arr

    if (empty(
$qs)) $qs 1;
    
$qs++;
        echo 
"<td valign=top><table border=1 width=100%><tr><td>Мир $world_name</td></tr><tr><td>"
        for (
$q 0$q count($worlds[$world_name]); $q++) 
        { 
              echo 
$worlds[$world_name][$q]."<br>"
        } 
        echo 
"</td></tr></table></td>"
    if ((
$qs>1) && ($qs%!= 0)) echo "</td><td width=6.25%></td><td>";
    if ((
$qs%5) == 0) echo "</td></tr><td height=20></td><tr><td>";

echo 
"</td></tr></table>"
?>


И еще надо сделать чтоб в каждом стобики имена сортировались по алфавиту. А то они все в перемешку лежат.

   
 
 автор: kasmanaft   (25.03.2006 в 08:33)   письмо автору
 
   для: Бамси   (25.03.2006 в 01:47)
 

>Но мне еще надо чтоб это не ставил перед 5 столбиком
я подумал, что после пятого....

тогда замени:

if ($qs>1) echo "</td><td width=6.25%></td><td>";

на:

//ну а если все-таки перед пятым, то замени %5 на %4...
if (($qs>1) && ($qs%5 != 0)) echo "</td><td width=6.25%></td><td>";

и после этой строчки добавь:

if (($qs%5) == 0) echo "</td></tr><tr><td>";

... ну и раз ты завел другую переменную.. то закоментированые строчки можно удалить...

   
 
 автор: Бамси   (25.03.2006 в 01:47)   письмо автору
 
   для: Бамси   (24.03.2006 в 04:51)
 

Короче вот что намутил:

<? 
include "config.php"
$query "select * from users order by CharsNick ASC"
$thm mysql_query($query); 

while(
$themes mysql_fetch_array($thm)) 

    
$CharsNick trim($themes['CharsNick']); 
    
$CharsWorld trim($themes['CharsWorld']); 
    
$worlds [$CharsWorld][] = "$CharsNick"

echo 
"<table width=100%><tr><td>"
foreach (
$worlds as $world_name => $arr


//        if (empty($wc)) $wc = 1; 
//        $wc++;
    
if (empty($qs)) $qs 1;
    
$qs++;
        echo 
"<td valign=top><table border=1 width=100%><tr><td>Мир $world_name</td></tr><tr><td>"
        for (
$q 0$q count($worlds[$world_name]); $q++) 
        { 
              echo 
$worlds[$world_name][$q]."<br>"
        } 
        echo 
"</td></tr></table></td>"
    if (
$qs>1) echo "</td><td width=6.25%></td><td>";

//        if (($wc%5) == 0) echo "</tr><tr>"; 


echo 
"</td></tr></table>"
?>

То что получаеться можешь посомтреть на скриншоте в аттаче.
Значит мне надо чтоб после каждого столбика была строчка </td><td width=6.25%></td><td>, я так и сделал, if ($qs>1) echo "</td><td width=6.25%></td><td>"; потом чтоб она не ставил перед первым столбиком я поставил оператор IF, работает.
Но мне еще надо чтоб это не ставил перед 5 столбиком.
И так же сделать чтоб после 5 столбика оно переходило на след. строчку.

   
 
 автор: Бамси   (24.03.2006 в 04:51)   письмо автору
 
   для: kasmanaft   (24.03.2006 в 04:02)
 

Вообщем тот скрипт тоже заработал :)
Просто я с таблицой ступил.
Только мне надо чтоб он это все делал не в одной таблице, а каждый столбик новая отдельная таблица. И между таблицами было растояние какоято. И если в одной линии 5 таблиц, то он переходит на новую строку ниже..

   

Сообщения:  [1-10]    [11-20]  [21-28] 

Форум разработан IT-студией SoftTime
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования