За последние 24 часа нас посетили 21789 программистов и 1381 робот. Сейчас ищут 680 программистов ...

как сделать таблицу и записать в нее по 20 слов

Тема в разделе "PHP для новичков", создана пользователем leon2009, 31 янв 2020.

  1. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    Здравствуйте! в файле много слов, я их считываю так:
    PHP:
    1. $file_handle = fopen("city.dat", "r");
    2. while (!feof($file_handle)) {
    3.     $line = fgets($file_handle);
    4.     //echo $line;      
    5. $str = $line;
    6. $symbol = "";
    7. $newString = $symbol . str_replace("", " $symbol", $str);
    8. echo '',$newString,'';
    9. }
    10. fclose($file_handle);
    как мне можно по 8 слов поместить в таблицу чтобы получить результат:
    HTML:
    1. <tr>
    2. <td>11111<br>22222<br>33333<br>44444<br>55555<br>66666<br>77777<br>88888</td>
    3. </tr>
    4. <tr>
    5. <td>99999<br>00000<br>10101010<br>12121212<br>13131313<br>14141414<br>15151515<br>16161616</td>
    6. </tr>
     
  2. SaloEater

    SaloEater Новичок

    С нами с:
    31 янв 2020
    Сообщения:
    1
    Симпатии:
    0
    Я так понимаю, у тебя текст будет без спец. символов, значит это подойдет.
    В $matches у тебя будут все слова из текста, а в хтмл обернешь в простом цикле.
    PHP:
    1. $content = file_get_contents("city.dat");
    2. preg_match_all('/\b\S+\b/', $content, $matches);
     
  3. AlexandrS

    AlexandrS Активный пользователь

    С нами с:
    30 сен 2017
    Сообщения:
    659
    Симпатии:
    103
    Адрес:
    Краснодар
    while - это цикл, а значит можно считать каждую итерацию $i++ и когда $i будет кратно 8 закрываем строку таблицы и создаем новую.
    Как-то так.
     
  4. acso

    acso Активный пользователь

    С нами с:
    15 апр 2010
    Сообщения:
    150
    Симпатии:
    25
    Адрес:
    Одесса
    И не забыть, что после закрытия строки по данной логике, новых данных может уже и не быть) А то можно получить пустую строку.
     
  5. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    PHP:
    1. if(!empty($xml->city_f->page))
    2. {
    3.     $agrs = $xml->city_f->page;
    4.     foreach ($agrs as $vals)
    5. {
    6. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    7. }
    8. }
    если честно, городов 322, в ХМЛЬ уже какой час записываю. а есть текстовый документ все слова через пробел.
     
  6. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    есть примерчик готовый???? может кто
    пр:
    PHP:
    1. function getMenu()
    2. {
    3.     global $linkes;
    4.     $links  = "<table align=\"center\"  border=\"0\" cellpadding=\"0\" cellspacing=\"0\" "."width=\"60%\" class=\"tabmenu\">\n";
    5.     $links .= "<tr>\n";
    6.     foreach($linkes as $key => $value)
    7.     {
    8.         $links .= "<td style=\"border-right: 1px;\" align=\"center\" width=\"25%\" title=\"".$key."\" >".
    9.         "<div class=\"warges\"><div class=\"knopka_avd wsa_5r\"><div>".$key."</div><div><a href=\"".HOST.$value."\">>> Далее >></a></div></div></div></td>\n";
    10.         }
    11.         $links .= "</tr></table>\n";
    12.         return $links;
    13.         }
    таблица
     
  7. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    Готовый примерчик чего? Вообще ни хрена не понятно чего ты хочешь натворить.
     
  8. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    хочу чтобы скрипт считывал текст с файла и выводил его в таблички по алфавиту. пр: все слова на А в одной таблице, все слова на Б в другой таблице.
     
  9. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    @leon2009, вот блин, чёб сразу так не сказать?
    Теперь понятно, но вызывает подозрение, что читать надо из файла, а не из БД, ну да фиг с ним. Аттач сюды файл, желательно xml.
     
  10. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    хмль доделываю
    HTML:
    1. <?xml version="1.0" encoding="utf-8"?>
    2. <menu>
    3. <city_a name="А">
    4.         <page link="abakan">Абакан</page>
    5.         <page link="azov">Азов</page>
    6.         <page link="aleksandrov">Александров</page>
    7.         <page link="aleksin">Алексин</page>
    8.         <page link="almetevsk">Альметьевск</page>
    9.         <page link="anapa">Анапа</page>
    10.         <page link="angarsk">Ангарск</page>
    11.         <page link="anjerosudgensk">Анжеро-Судженск</page>
    12.         <page link="apatity">Апатиты</page>
    13.         <page link="arzamas">Арзамас</page>
    14.         <page link="armavir">Армавир</page>
    15.         <page link="arsenev">Арсеньев</page>
    16.         <page link="artem">Артем</page>
    17.         <page link="arhangelsk">Архангельск</page>
    18.         <page link="asbest">Асбест</page>
    19.         <page link="astrahan">Астрахань</page>
    20.         <page link="achinsk">Ачинск</page>
    21.     </city_a>
     

    Вложения:

    • city1.txt
      Размер файла:
      6,5 КБ
      Просмотров:
      2
  11. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    HTML:
    1. <city_b name="Б">
    2.         <page link="balakovo">Балаково</page>
    3.         <page link="balahna">Балахна</page>
    4.         <page link="balashiha">Балашиха</page>
    5.         <page link="balashov">Балашов</page>
    6.         <page link="barnaul">Барнаул</page>
    7.         <page link="bataisk">Батайск</page>
    8.         <page link="belgorod">Белгород</page>
    9.         <page link="belebey">Белебей</page>
    10.         <page link="belovo">Белово</page>
    11.         <page link="belgorock">Белогорск&#160;(Амурская&#160;область)</page>
    12.         <page link="beloreck">Белорецк</page>
    13.         <page link="belorechensk">Белореченск</page>
    14.         <page link="berdsk">Бердск</page>
    15.         <page link="berezniki">Березники</page>
    16.         <page link="berezovskiy">Березовский&#160;(Свердловская&#160;область)</page>
    17.         <page link="biisk">Бийск</page>
    18.         <page link="biribidjan">Биробиджан</page>
    19.         <page link="blagoveschensk">Благовещенск&#160;(Амурская&#160;область)</page>
    20.         <page link="bor">Бор</page>
    21.         <page link="borisoglebsk">Борисоглебск</page>
    22.         <page link="borovich">Боровичи</page>
    23.         <page link="bratsk">Братск</page>
    24.         <page link="bryansk">Брянск</page>
    25.         <page link="bugulma">Бугульма</page>
    26.         <page link="budenovsk">Буденновск</page>
    27.         <page link="buzuluk">Бузулук</page>
    28.         <page link="buinaksk">Буйнакск</page>
    29.     </city_b>
    --- Добавлено ---
    и уменьшить код:
    PHP:
    1. echo "<tr>
    2. <td width='25%'><ul>";
    3. if(!empty($xml->city_d->page))
    4. {
    5.     $agrs = $xml->city_d->page;
    6.     foreach ($agrs as $vals)
    7. {
    8. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    9. }
    10. }
    11. echo "</ul></td><td width='25%'><ul>";
    12. if(!empty($xml->city_e->page))
    13. {
    14.     $agrs = $xml->city_e->page;
    15.     foreach ($agrs as $vals)
    16. {
    17. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    18. }
    19. }
    20. echo "</ul></td><td width='25%'><ul>";
    21. if(!empty($xml->city_j->page))
    22. {
    23.     $agrs = $xml->city_j->page;
    24.     foreach ($agrs as $vals)
    25. {
    26. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    27. }
    28. }
    29. echo "</ul></td><td width='25%'><ul>";
    30. if(!empty($xml->city_z->page))
    31. {
    32.     $agrs = $xml->city_z->page;
    33.     foreach ($agrs as $vals)
    34. {
    35. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    36. }
    37. }
    38. echo "</ul></td>
    39. </tr>
    40. <tr>
    41. <td width='25%'><ul>";
    42. if(!empty($xml->city_i->page))
    43. {
    44.     $agrs = $xml->city_i->page;
    45.     foreach ($agrs as $vals)
    46. {
    47. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    48. }
    49. }
    50. echo "</ul></td><td width='25%'><ul>";
    51. if(!empty($xml->city_k->page))
    52. {
    53.     $agrs = $xml->city_k->page;
    54.     foreach ($agrs as $vals)
    55. {
    56. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    57. }
    58. }
    59. echo "</ul></td><td width='25%'><ul>";
    60. if(!empty($xml->city_l->page))
    61. {
    62.     $agrs = $xml->city_l->page;
    63.     foreach ($agrs as $vals)
    64. {
    65. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    66. }
    67. }
    68. echo "</ul></td><td width='25%'><ul>";
    69. if(!empty($xml->city_m->page))
    70. {
    71.     $agrs = $xml->city_m->page;
    72.     foreach ($agrs as $vals)
    73. {
    74. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    75. }
    76. }
    77. echo "</ul></td>
    78. </tr>
    79. <tr>
    80. <td width='25%'><ul>";
    81. if(!empty($xml->city_n->page))
    82. {
    83.     $agrs = $xml->city_n->page;
    84.     foreach ($agrs as $vals)
    85. {
    86. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    87. }
    88. }
    89. echo "</ul></td><td width='25%'><ul>";
    90. if(!empty($xml->city_o->page))
    91. {
    92.     $agrs = $xml->city_o->page;
    93.     foreach ($agrs as $vals)
    94. {
    95. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    96. }
    97. }
    98. echo "</ul></td><td width='25%'><ul>";
    99. if(!empty($xml->city_p->page))
    100. {
    101.     $agrs = $xml->city_p->page;
    102.     foreach ($agrs as $vals)
    103. {
    104. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    105. }
    106. }
    107. echo "</ul></td><td width='25%'><ul>";
    108. if(!empty($xml->city_r->page))
    109. {
    110.     $agrs = $xml->city_r->page;
    111.     foreach ($agrs as $vals)
    112. {
    113. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    114. }
    115. }
    116. echo "</ul></td>
    117. </tr>
    118. <tr>
    119. <td width='25%'><ul>";
    120. if(!empty($xml->city_s->page))
    121. {
    122.     $agrs = $xml->city_s->page;
    123.     foreach ($agrs as $vals)
    124. {
    125. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    126. }
    127. }
    128. echo "</ul></td><td width='25%'><ul>";
    129. if(!empty($xml->city_t->page))
    130. {
    131.     $agrs = $xml->city_t->page;
    132.     foreach ($agrs as $vals)
    133. {
    134. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    135. }
    136. }
    137. echo "</ul></td><td width='25%'><ul>";
    138. if(!empty($xml->city_u->page))
    139. {
    140.     $agrs = $xml->city_u->page;
    141.     foreach ($agrs as $vals)
    142. {
    143. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    144. }
    145. }
    146. echo "</ul></td><td width='25%'><ul>";
    147. if(!empty($xml->city_f->page))
    148. {
    149.     $agrs = $xml->city_f->page;
    150.     foreach ($agrs as $vals)
    151. {
    152. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    153. }
    154. }
    155. echo "</ul></td>
    156. </tr>
     
  12. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    Стоп, а откуда этот xml файл берётся?
     
  13. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
  14. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    @leon2009, как же трудно из тебя вытягивать информацию. FILE.xml откуда? Со стороннего ресурса или состряпанный собственными руками?
     
  15. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    своими руками :(
     
  16. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    не получаеться = везде выдает категорию А - как прочитать с категории от А до Я?
    PHP:
    1. <?php
    2. $xml = simplexml_load_file("xml/db.xml") or die("Error: Cannot create object");
    3. $rows = 2; // количество строк, tr
    4. $cols = 4; // количество столбцов, td
    5. echo '<table border="1">';
    6. for ($tr=1; $tr<=$rows; $tr++)
    7. {
    8.     echo '<tr>';
    9.     for ($td=1; $td<=$cols; $td++){
    10.         echo '<td>';      
    11. if(!empty($xml->city_a->page))
    12. {
    13.     $agrs = $xml->city_a->page;
    14.     foreach ($agrs as $vals)
    15. {
    16. echo "<li><a href='$vals[link]' class='link2'>$vals</a></li>";
    17. }
    18. }      
    19. echo '</td>';
    20. }
    21.     echo '</tr>';
    22. }
    23.  
    24. echo '</table>';
    25. ?>
     
  17. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    Это самое страшное, что я ожидал услышать. Похоже у нас "проблема молотка" с "эффектом матрёшки"
    Готовься к основательной дискуссии :)
     
  18. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    все так тяжко??? :(..... я кроме текстового блокнота больше ничего не использую. получилось в прошлый раз: копия дрома, только все хранилось в текстовиках o_O
     
  19. Valick

    Valick Активный пользователь

    С нами с:
    12 авг 2018
    Сообщения:
    1.911
    Симпатии:
    328
    @leon2009, вот смотри. XML - это грубо говоря формат обмена данными.
    Представь ситуацию, что ты нумизмат. И друг твой тоже нумизмат. Ты идёшь к другу и вы меняетесь монетами. Это нормально. Все нумизматы так делают. А теперь представь ситуацию, что ты никуда не идёшь. Сидишь дома и меняешься монетами сам с собой. Звучит странно, не так ли?
    Вторая странность заключается в том, что писать xml руками - это как секс "без дивчины". XML обычно генерируется скрипом, с одной лишь целью, куда-нибудь его сбагрить.
    Нет смысла писать руками xml, что бы потом преобразовать его в html. Почему сразу теми же руками не написать html. Это отчасти тоже странно, но гораздо менее.
    Но даже если всё вышенаписанное взять и сжечь, то всё равно я тебя огорчу, тем что есть определённые правила написания корректного XML и там их жуть как много. city_a и city_b - это уже петля на шею. Различного атрибута name более чем достаточно.
     
    #19 Valick, 4 фев 2020
    Последнее редактирование: 4 фев 2020
  20. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    как мне правильно сделать?
     
  21. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    PHP:
    1. $xml = simplexml_load_file("xml/db.xml") or die("Error: Cannot create object");
    2. foreach ($xml as $worker) {
    3.     echo $worker->page,"\n";
    выдает только первое слово из списка :(
    т.е.
    Абакан Балаково Великие Луки Гатчина Дербент Евпатория Железногорск (Красноярский край) Заречный Иваново Казань Лабинск Магадан Набережные Челны Обнинск Павлово Раменское Салават Таганрог
     
  22. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    PHP:
    1. foreach(glob('papka/*.txt') as $filename)
    2. {
    3. $file_handle = fopen($filename, "r");
    4. while (!feof($file_handle))
    5. {
    6.     $line = fgets($file_handle);
    7.     echo $line;
    8. }
    9. fclose($file_handle);
    10. }
    как все слова на А вставить в одну табличку, все на Б в другую табличку html?
     
    #22 leon2009, 13 фев 2020
    Последнее редактирование: 13 фев 2020
  23. leon2009

    leon2009 Активный пользователь

    С нами с:
    1 янв 2015
    Сообщения:
    102
    Симпатии:
    0
    PHP:
    1. <?php
    2. $xml = simplexml_load_file("xml/db.xml") or die("Error: Cannot create object");
    3. echo "<table align=center border=0 cellpadding=8 cellspacing=8 width=80% class=link2>
    4. ";
    5. if(!empty($xml->link->page))
    6. {
    7.     $agrs = $xml->link->page;
    8.     foreach ($agrs as $vals)
    9. {
    10. echo "<tr><td><a href=$vals[name] class=link2>$vals</a></td></tr>";
    11. }
    12. }
    13. echo "</table>";
    14. ?>
    15. не получается, таблица должна выходить 4 на 4