Здесь курят мануал.

Добро пожаловать на Пыху!

Логин:
Пароль:
 

Нет прописки? Зарегистрируйся!

Новости

Пыха переехала на новый сервер, ура!

Краснодарское время: 25 Май, 2012, 05:29:19

Страниц: [1]
Печать
Автор Тема: не получается заполнить таблицы базы данных  (Прочитано 308 раз)
0 Пользователей и 1 Гость смотрят эту тему.
vlad33    ↓ 
28 Октябрь, 2011, 12:51:45
НЕ ХУЕТА! ХУЕТА!

Карма: 0
Сообщений: 2
Сила слова: 0

задача следующая:с помощью скрипта сгенерировать содержимое таблиц:
должно быть 20 групп, на каждую из них от 15 до 25 категорий, на каждую категорию от 35 до 70 элементов.
 
В результате выполнения нижеприведенного скрипта генерируется дохрена значений в таблице элементы и по одному значению в таблицах категории и группы
 
PHP
<?php
include "testdata.php";
$codeb= array_merge( range('A', 'Z'));          //массив для генерации букв
$_SESSION['codeb'] ='';
for ($i = 0; $i <30 ; $i++)
$_SESSION['codeb'] .= $codeb[array_rand($codeb)];
echo "<br>".$_SESSION['codeb']."<br>";
 
$codec= array_merge(range('0', '9'));         //массив для генерации чисел
$_SESSION['codec'] ='';
for ($i = 0; $i < 11; $i++)
$_SESSION['codec'] .= $codec[array_rand($codec)];
echo $_SESSION['codec']."<br>";
 

function active(){         //ф-ция по выводу активности да или нет
    if( rand(0,1)==1 ){
        $temp='yes';
    }
    else $temp='no';
    return $temp;
}
 
$result = mysql_query("SELECT * FROM $db_name.groups",$link);
 
if (mysql_num_rows($result) == 0)
{
    echo "Таблица Группы была уже заполнена<br>";
 }
/*else
{
    $tgroups="INSERT into $db_name.groups (id_group,name,description,active) values(not null,'".$_SESSION['codeb']."',
    '".$_SESSION['codeb']."','".active()."')";
 
    mysql_query($tgroups, $link) or die("невозможно заполнить таблицу Группы<br>");
}*/

 
$result = mysql_query("SELECT * FROM $db_name.categories",$link);
 
if (mysql_num_rows($result) == 0)
{
    echo"<br>Таблица категории была уже заполнена<br>";
}
/*else
{
    $tcategories="INSERT into $db_name.categories (id_group, id_name, description, active) VALUES (not null,not null, '".$_SESSION['codeb']."',
    '".active()."')";
 
    mysql_query($tcategories, $link) or die("невозможно заполнить таблицу Категории<br>");
 }*/

 
$result = mysql_query("SELECT * FROM $db_name.items",$link);
 
if (mysql_num_rows($result) == 0)
{
    echo"<br>Таблица items была уже заполнена<br>";
}
/*else
{
    $titems="INSERT into $db_name.items (id_category, id_name, description, price, active) VALUES (not null,not null, '".$_SESSION['codeb']."',
    '".$_SESSION['codec']."', '".active()."')";
 
    mysql_query($titems, $link) or die("невозможно заполнить таблицу items<br>");
 }*/

 
for($tgroups=0;$tgroups<20;$tgroups++){
    $tgroups="INSERT into $db_name.groups (name,description,active) values('".$_SESSION['codeb']."',
    '"
.$_SESSION['codeb']."','".active()."')";
    mysql_query($tgroups, $link) or die("невозможно заполнить таблицу Группы<br>");
    for($tcategories=0;$tcategories>=15, $tcategories<=25;$tcategories++){
        $tcategories="INSERT into $db_name.categories (description, active) VALUES ('".$_SESSION['codeb']."',
       '"
.active()."')";
        mysql_query($tcategories, $link) or die("невозможно заполнить таблицу Категории<br>");
        for($titems=0; $titems>=35, $titems<=70; $titems++){
            $titems="INSERT into $db_name.items (description, price, active) VALUES ('".$_SESSION['codeb']."',
            '"
.$_SESSION['codec']."', '".active()."')";
            mysql_query($titems, $link) or die("невозможно заполнить таблицу items<br>");
        }
    }
}
 

 
/*do{
    $tgroups;
    mysql_query($tgroups, $link) or die("невозможно заполнить таблицу Группы<br>");
    do{
        $tcategories;
        mysql_query($tcategories, $link) or die("невозможно заполнить таблицу Категории<br>");
        do{
            $titems;
            mysql_query($titems, $link) or die("невозможно заполнить таблицу Элементы<br>");
        }
        while($titems++ && $titems>=35 && $titems<=70);
        echo"<br>Элементы заполнены<br>";
    }
    while($tcategories++ && $tcategories>=15 && $tcategories<=25);
    echo"<br>Категории заполнены<br>";
}
while($tgroups=20);
echo"<br>Группы заполнены<br>";
mysql_close($link); */

 
?>
Записан
Faster    ↓ 
28 Октябрь, 2011, 01:40:18 , спустя 48 минут 33 секунды
НЕ ХУЕТА! ХУЕТА!


Карма: 10
Сообщений: 954
Сила слова: 1.05

вопрос в чем? хочешь чтобы написали за тебя?
Записан

воспитываю дочь. С домами и деревьями  - не приставать.
Ivan    ↓ 
28 Октябрь, 2011, 01:43:06 , спустя 2 минуты 48 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 27
Сообщений: 1366
Сила слова: 1.98

День быдлокода на пiха.ру
Даже отвечать не хочется - даже я когда начинал программировать, классе в девятом, таких ошибок логических не допускал
Записан

Givi    ↓ 
28 Октябрь, 2011, 10:26:20 , спустя 8 часов 43 минуты 14 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Адекваты

Карма: 42
Сообщений: 2305
Сила слова: 1.82

vlad33, твоя функция "активности" говно, которое легко сократить до
PHP
function active()
{
    return rand(0,1);
}
Хотя в целом вообще не вижу смысла создавать такую функцию, можно просто писать rand(0,1). Ибо использование строковых "yes" и "no" хуйня как в плане лишнего места в базе, так и в плане лишнего места в коде вообще.
 
А про запросы в цикле тут вообще все молчат, ибо это поповщина сплошная. А Попова нужно посылать в его "фамильную" ценность, то есть в жопу!
Записан

Все, что говорят другие - неправда! До тех пор, пока ты сам в это не поверишь.
Если человек дурак, то... чур это не я!
Frozzeg    ↓ 
28 Октябрь, 2011, 10:51:27 , спустя 25 минут 7 секунд
НЕ ХУЕТА! ХУЕТА!

Группа: Пятросянище

Карма: 92
Сообщений: 5501
Сила слова: 1.67

пхп это рассадник зла просто
Записан
vlad33    ↓ 
29 Октябрь, 2011, 12:28:15 , спустя 13 часов 36 минут 48 секунд
НЕ ХУЕТА! ХУЕТА!

Карма: 0
Сообщений: 2
Сила слова: 0

Раздел форума для новичков. Реально по делу ответил только Givi (спасибо, учту), а остальные, только раскритиковали, а реально указать на ошибки так и не додумались, писать код за меня не нужно, я и сам в состоянии; прошу указать на ошибки и помочь советом; может и быдлокод, но я хочу научиться делать все грамотно, поэтому и обратился за помощью.
Записан
Страниц: [1]
Печать
 

Перейти в:  

Этот топик скрыли: adw0rd