Написание динамических вкладок Hover в HTML с использованием PHP - PullRequest
0 голосов
/ 24 декабря 2018

Я перехожу по ссылке: Вкладки при наведении курсора . Я читаю содержимое файла и хочу сделать его как id Печать содержимого вкладки соответственно.

Мой файл: NamingClass.txt содержит:

Bicycle
MountainBike
Test

Мой код php содержит:

<div class="tab">
    <?php
    $filename="NamingClass.txt";
    $Content=file($filename);
    $NoOfLine=count(file($filename));
    for($i=0;$i<$NoOfLine;$i++)
    {
            $cont=$Content[$i];
            $jid="'$cont'";
            echo '<button class="tablinks" onmouseover="openCity(event, '.$jid.')">'.$cont.'</button>';
    }
        echo '</div>';
        for($i=0;$i<$NoOfLine;$i++)
        {
                $cont=$Content[$i];
                echo '<div id="'.$cont.'" class="tabcontent">
                  <h3>'.$cont.'</h3>
                  <p> Content1 code.....</p>
                </div>';
        }
?>

Но значение табуляции не печатается.Я думаю, что ошибка, которую я здесь делаю, это $ jid , потому что в исходном коде

<button class="tablinks" onmouseover="openCity(event, 'London')">London</button>

Inorder для печати 'London' в php echo я использовал $ jid = "'$ cont«";

echo '<button class="tablinks" onmouseover="openCity(event, '.$jid.')">'.$cont.'</button>';

Я перепробовал все возможности, но печать вкладки не выполняется. Пожалуйста, предложите что-нибудь.

1 Ответ

0 голосов
/ 24 декабря 2018

Когда вы назначаете $ NoOfLine, используйте count ($ Content) ;, а не count (файл ($ filename));Кроме того, оба цикла, кажется, делают одно и то же, поэтому я бы скомбинировал их, затем повторил ваш первый блок кода в этом цикле for (), а также построил ваш второй эхо в этом первом цикле for (), а затем отобразил эхо, которое собрало данныепосле завершения цикла for () также file () не удаляет EOL, поэтому я использовал бы array_map с trim || rtrim (), когда вы пытаетесь поднять файл ().Я также считаю бесполезным переписывать / копировать переменные, когда у вас уже есть переменная в «$ Content [$ i]» ...

Пример ...

$filename = "NamingClass.txt";

$Content  = array_map ( 'rtrim', file ( $filename ) );

$NoOfLine = count ( $Content );

$secondL  = '';

for ( $i = 0; $i < $NoOfLine; $i += 1 )
{
    echo '<button class="tablinks" onmouseover="openCity(event, \'' . $Content[$i] . '\')">' . $Content[$i] . '</button>';

    $secondL .= '<div id="' . $Content[$i] . '" class="tabcontent">
              <h3>' . $Content[$i] . '</h3>
              <p> Content1 code.....</p>
            </div>';
}

echo '</div>';

echo $secondL;
...