href подтвердите неожиданное возвращение - PullRequest
0 голосов
/ 30 ноября 2018

Я пытаюсь отобразить подтверждающее сообщение, когда вы нажимаете значок.но когда я нажимаю на значок, я получаю сообщение: Parse error: syntax error, unexpected 'return' (T_RETURN) in ... on line 42

Я пытался поиграться с кавычками, но не могу заставить его работать.

Это код настрока 42:

echo "<td>".$row["id"]."</td><td>".$row['naam']."</td><td>".$row['adres']."</td><td>" . $row['email'] . "</td><td><a href='index.php'><i class='fas fa-pen'></i></a></td><td>
              <a href="delete.php?id=<?php echo $row["id"];?>"onclick="return confirm('Are you sure?');"><i class='fas fa-user-times'></i></a></td>";

Заранее спасибо.

Ответы [ 2 ]

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

Итак, вот как обычно все делается.Ваш PHP и HTML разделены - в идеале в отдельных файлах, но по крайней мере вы не должны выводить большие куски своей страницы с помощью операторов echo.Выход из режима PHP для вывода большей части вашей страницы, возвращаясь только тогда, когда необходимо вывести переменную или вам нужна управляющая структура, такая как цикл.В этом коде я использовал альтернативный синтаксис для управляющих структур и короткий эхо-тег , чтобы сделать вещи (IMO) более аккуратными.Последнее замечание: используйте htmlspecialchars(), чтобы обеспечить правильное экранирование значений.

Что касается JavaScript, вы должны использовать прослушиватели событий для присоединения действий к элементам, напримерследующий пример.Это проще с библиотекой , такой как jQuery , но достаточно просто для работы с собственным кодом DOM.

<?php
$conn = ...
$sql = "SELECT id, naam, adres, email FROM klanten";
$result = $conn->query($sql);
// do some error checking on the result before proceding
?>
<html>
...
<table>
<?php foreach($result->fetch_assoc() as $row): ?>
    <tr>
        <td><?=htmlspecialchars($row["id"])?></td>
        <td><?=htmlspecialchars($row["naam"])?></td>
        <td><?=htmlspecialchars($row["adres"])?></td>
        <td><?=htmlspecialchars($row["email"])?></td>
        <td>
            <a href='index.php'>
                <i class='fas fa-pen'></i>
            </a>
        </td>
        <td>
            <a href="delete.php?id=<?=htmlspecialchars($row["id"])?>" class="delete">
                <i class="fas fa-user-times"></i>
            </a>
        </td>
    </tr>
<?php endforeach ?>
</table>
...
<script>
    // look for every element with the "delete" class
    var links = document.getElementsByClass("delete");
    // loop over each one that we find
    for (var i = 0; i < links.length; i++) {
        // run a function when the element is clicked
        links[i].addEventListener("click", function(e) {
            return confirm("Are you sure?");
        }, false);
    }
</script>
0 голосов
/ 01 декабря 2018

Это не очень практично и не является ответом, а скорее средством поиска ответа.

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

echo "<td>".$row['id']."</td>";
echo "<td>".$row['naam']."</td>";
echo "<td>".$row['adres']."</td>";
echo "<td>".$row['email']."</td>";
echo "<td><a href='index.php'><i class='fas fa-pen'></a></td>";
echo "<td><a href='delete.php?id=".$row['id']." onClick='return confirm(\"Are you sure?\");'><i class='fas fa-pen'></a></td>";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...