Попытка опубликовать многомерный массив с php - PullRequest
1 голос
/ 05 марта 2019

Я пытаюсь отобразить информацию, основываясь на том, какой массив отправляется в сообщении. Это мой код многомерного массива:

    $filmarkiv = array( 
    'rpo' => array( 
        'titel' => 'loremipsum',
        'beskr' => 'loremipsumloremipsumloremipsum', 
        'skues' => 'loremipsum', 
        'imdb' => 'https://loremipsum/', 
        'img' => 'loremipsum.jpg',
        'rull' => 'loremipsum.png'),      
    'thepre' => array( 
        'titel' => 'loremipsum',
        'beskr' => 'loremipsum', 
        'skues' => 'loremipsum', 
        'imdb' => 'https://loremipsum1/', 
        'img' => 'loremipsum.jpg',
        'rull' => 'loremipsum.png'),         
    'tts' => array( 
        'titel' => 'loremipsum',
        'beskr' => 'loremipsum', 
        'skues' => 'loremipsum', 
        'imdb' => 'https://loremipsum/', 
        'img' => 'loremipsum.jpg',
        'rull' => 'loremipsum.png'
    ));

Этот код решает, что фильм и его информация.

Кроме того, этот код:

 <?php

            if (isset($_POST['submit'])) {
                $valgt = $_POST['submit']; 
                if ($valgt == " .$key. ") {
                echo "<section id='valgtfilm'>
                         <h1> " .$filmarkiv ['$valgt']['titel']." </h1>
                         <p>  " .$filmarkiv ['$valgt']['besk']."</p>
                         <P>  " .$filmarkiv ['$valgt']['skues']." </p>
                         <img src=' " .$filmarkiv ['$valgt']['img']. " ' alt='Posterplakat' />
                         <img src=' " .$filmarkiv ['$valgt']['rull']. " ' alt='Posterplakat' />
                         <a href=' ".$filmarkiv['imdblink']." ' id='imdblink'>Link til ImdB</a>
                      </section>";
            }};

        ?>

И у меня также есть форма с возможностью выбора для каждого.

            <form action="" method="post">
        <label for="Filmarkiv">Filmarkiv: </label>
        <select name="Filmarkiv" id="Filmarkiv">
        <option value="#">Filmarkivliste: </option>
        <option value="rpo">Ready Player One</option>
        <option value="thepre"> The Prestige</option>
        <option value="tts">The Truman Show</option>
        </select>
        <input type="submit" name="submit" value="Velg Film!" />

Вы видите какие-либо ошибки?

Ответы [ 4 ]

0 голосов
/ 05 марта 2019

Это должно быть как беле ...

 <?php

                if (isset($_POST['submit'])) {
                    $valgt = $_POST['Filmarkiv']; 
                    if ($valgt) {
                    echo "<section id='valgtfilm'>
                             <h1> " .$filmarkiv[$valgt]['titel']." </h1>
                             <p>  " .$filmarkiv[$valgt]['besk']."</p>
                             <P>  " .$filmarkiv[$valgt]['skues']." </p>
                             <img src=' " .$filmarkiv[$valgt]['img']. " ' alt='Posterplakat' />
                             <img src=' " .$filmarkiv[$valgt]['rull']. " ' alt='Posterplakat' />
                             <a href=' ".$filmarkiv[$valgt][imdb]." ' id='imdblink'>Link til ImdB</a>
                          </section>";
                }};

            ?>

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

<?php

                     if (isset($_POST['submit'])) {
                        $valgt = $_POST['Filmarkiv']; 
                        if ($valgt) {
                        echo "<section id='valgtfilm'>"; ?>
                          <h1> <?=($filmarkiv[$valgt]['titel']) ? ($filmarkiv[$valgt]['titel']) : ("")?> </h1>
                                 <p> <?=($filmarkiv[$valgt]['besk']) ? ($filmarkiv[$valgt]['besk']) : ("")?> </p>
                                 <P>  <?=($filmarkiv[$valgt]['skues']) ? ($filmarkiv[$valgt]['skues']) : ("")?>  </p>
                   <?=($filmarkiv[$valgt]['img']) ? ("<img src=' " .$filmarkiv[$valgt]['img']. " ' alt='Posterplakat' />") : ("")?>              
                    <?=($filmarkiv[$valgt]['rull']) ? ("<img src=' " .$filmarkiv[$valgt]['rull']. " ' alt='Posterplakat' />") : ("")?>             
                                <?=($filmarkiv[$valgt]['imdblink']) ? ("<a href=' " .$filmarkiv[$valgt]['imdblink']. " '> Link til ImdB</a> </section>") : (" </section>")?>;
<?                    }};

                ?>
0 голосов
/ 05 марта 2019

Пожалуйста, обновите ваш код моим кодом для отправки кода формы.

if (isset($_POST['submit'])) {
         $valgt = $_POST['Filmarkiv']; 

        if(isset($filmarkiv[$valgt])){

            echo "<section id='valgtfilm'>
                     <h1> " .$filmarkiv[$valgt]['titel']. " </h1>
                     <p>  " .$filmarkiv[$valgt]['besk']. "</p>
                     <P>  " .$filmarkiv[$valgt]['skues']. " </p>
                     <img src=' " .$filmarkiv[$valgt]['img']. " ' alt='Posterplakat' />
                     <img src=' " .$filmarkiv[$valgt]['rull']. " ' alt='Posterplakat' />
                     <a href=' ".$filmarkiv[$valgt]['imdblink']." ' id='imdblink'>Link til ImdB</a>
                  </section>";
        }
        else{
            echo 'Not Found';
        }
}
0 голосов
/ 05 марта 2019

Предполагая, что у вас есть код PHP и HTML на одной странице, вы можете сделать это следующим образом:

<?php
$filmarkiv = array( 
    'rpo' => array( 
        'titel' => 'Ready Player One',
        'beskr' => 'loremipsumloremipsumloremipsum', 
        'skues' => 'loremipsum', 
        'imdb' => 'https://loremipsum/', 
        'img' => 'loremipsum.jpg',
        'rull' => 'loremipsum.png'),      
    'thepre' => array( 
        'titel' => 'The Prestige',
        'beskr' => 'loremipsum', 
        'skues' => 'loremipsum', 
        'imdb' => 'https://loremipsum1/', 
        'img' => 'loremipsum.jpg',
        'rull' => 'loremipsum.png'),         
    'tts' => array( 
        'titel' => 'The Truman Show',
        'beskr' => 'loremipsum', 
        'skues' => 'loremipsum', 
        'imdb' => 'https://loremipsum/', 
        'img' => 'loremipsum.jpg',
        'rull' => 'loremipsum.png'
    )
);
?>

<form method="post">
    <label for="Filmarkiv">Filmarkiv: </label>
    <select name="Filmarkiv" id="Filmarkiv">
        <option value="">Filmarkivliste:</option>
        <?php
            foreach ($filmarkiv as $identifier => $film) {
                echo '
        <option value="' . $identifier . '">' . $film['titel'] . '</option>';
            }
        ?>
    </select>
    <input type="submit" name="submit" value="Velg Film!" />
</form>

<?php
    if (isset($_POST['submit']) && !empty($_POST['Filmarkiv'])) {
       $film = $filmarkiv[$_POST['Filmarkiv']];
?>
<section id="valgtfilm">
    <h1><?php echo $film['titel'] ?></h1>
    <p><?php echo $film['besk'] ?></p>
    <p><?php echo $film['skues'] ?></p>
    <img src="<?php echo $film['img'] ?>" alt="Posterplakat" />
    <img src="<?php echo $film['rull'] ?>" alt="Posterplakat" />
    <a href="<?php echo $film['imdblink'] ?>" id="imdblink">Link til ImdB</a>
</section>
<?php
    }
?>
0 голосов
/ 05 марта 2019

Попробуйте это:

if (isset($_POST['submit'])) {
    $valgt = $_POST['Filmarkiv']; 
    echo "<section id='valgtfilm'>
              <h1> " .$filmarkiv [$valgt]['titel']. " </h1>
              <p>  " .$filmarkiv [$valgt]['besk']. "</p>
              <P>  " .$filmarkiv [$valgt]['skues']. " </p>
              <img src=' " .$filmarkiv [$valgt]['img']. " ' alt='Posterplakat' />
              <img src=' " .$filmarkiv [$valgt]['rull']. " ' alt='Posterplakat' />
              <a href=' ".$filmarkiv[$valgt]['imdblink']." ' id='imdblink'>Link til ImdB</a>
          </section>";
};
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...