Dag mensen,

Ik genereer een tabel met nieuwsberichten, deze komen uit de database. In elke tabelrij gooi ik een button, om de data te kunnen bewerken. Dit doe ik d.m.v. een modal. Het ziet er nu als volgt uit :


echo '<td><button class="btn btn-default" onclick="editNews(' . $ni['news_id'] . ')">Bewerken</td>';


function editNews(id) {
                $('#myModal').modal('show');
                $('#hiddennewsid').val(id);
            }


<!-- Modal -->
        <div id="myModal" class="modal fade" role="dialog">
            <div class="modal-dialog">

                <!-- Modal content-->
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal">&times;</button>
                        <h4 class="modal-title">Nieuws aanpassen</h4>
                    </div>
                    <div class="modal-body">
                        <form class="form-horizontal" method="POST">
                            <div class="form-group">
                                <label class="col-sm-2 col-sm-2 control-label">Onderwerp</label>
                                <div class="col-sm-10">
                                    <input type="text" class="form-control" id="subject">
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 col-sm-2 control-label">Nieuwsbericht (max 500 tekens)</label>
                                <div class="col-sm-10">
                                    <textarea required rows = "6" style="min-width: 100%" id="content"></textarea>
                                </div>
                            </div>
                            <input type="hidden" value="" id="hiddennewsid" name="newsid">
                        </form>
                    </div>
                    <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal" onclick="edit_news_handle()">Bijwerken</button>
                    </div>
                </div>

            </div>
        </div>


Dit zijn de onderdelen, nu wil ik graag de tekstinputs in het modal aanvullen. Dit wil ik doen op de volgende manier;


echo '<td><button class="btn btn-default" onclick="editNews(' . $ni['news_id'] . ', ' . $ni['news_subject'] . ', ' . $ni['content']. ')">Bewerken</td>';

function editNews(id, subject) {
                $('#myModal').modal('show');
                $('#hiddennewsid').val(id);
                $('#subject').val(subject);
            }


Verder geen wijzigingen in het modal. Wanneer ik dit test en ik controleer de console. Geef hij aan "Test not defined". Test is in dit geval de waarde van $ni['news_subject'] (het stukje tekst 'test').


Ik heb van alles geprobeerd door o.a. te klote met quotes. Helaas geen resultaat.

SOS help

Groet,

Gijs
Een alternatief zou zijn om gewoon met AJAX de content op te halen, en die niet mee te geven aan je functie. Maar dit zou ook gewoon moeten werken, tenzij je nog ergens anders deze constructie gebruikt, of je naar cache zit te kijken.
Crtl + r reload gedaan. Toch blijft hij de fout weer weergeven, en de html ziet er nu zo uit;


<tr><td>Gijs</td><td>hoi</td><td>doei mijndfsgdfjkgsdfg
asdfajksdhfa
asdfasdf
</td><td>2016-05-21 16:04:25</td><td><button class="btn btn-default" onclick="editNews(28, 'hoi', 'doei mijndfsgdfjkgsdfg
asdfajksdhfa
asdfasdf
')">Bewerken</td><td><button class="btn btn-default" onclick="archNews(28)">Archiveren</td><td><button class="btn btn-default" onclick="deleteNews(28)">Verwijderen</td></tr>                                    </tr> 
[offtopic]De toets F5 i.v.m. Crtl + R is makkelijker ;)[/offtopic]
Nog verder offtopic: F5 vernieuwt de cache niet. ctrl+R ook niet. ctrl+F5 wel. Laat je PHP code eens zien.
Aha, dat wist ik nog niet!
Bedankt voor de tips. Ik heb alle genoemde opties geprobeerd, maar helaas geen resultaat.

Iemand nog mogelijkheden/suggesties? Ben zelf wel bekend met AJAX. Alleen puur om spul in een database te zetten.

Grappig, want ik zie het antwoord op de vraag "laat je PHP code eens zien", dus zoals het nu is, niet staan. Iets vollediger ook dan één regeltje. Ik heb namelijk het vermoeden dat je gewoon verschillende stukken code door elkaar aan het halen bent.

<?php
//Altijd eerst de loader laden. Hierin worden alle klassen gekoppeld, en object aangemaakt indien nodig!
include_once 'loader.php';

//Pagina visibility instellen met de gatekeeper classes
$gatekeeper->setVisibility("Guest");
?>

<!DOCTYPE html>
<html lang="en">
    <head>
        <meta charset="utf-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">

        <title>Onelife Nieuws</title>

        <!-- Bootstrap core CSS -->
        <link href="css/bootstrap.css" rel="stylesheet">

        <!-- Eigen css bestanden inladen -->
        <link href="css/style.css" rel="stylesheet">
        <link href="css/style-responsive.css" rel="stylesheet">

        <link href="css/table-responsive.css" rel="stylesheet">

    </head>

    <body>

        <section id="container" >

            <?php include_once 'config/sidebar.php'; ?>

            <!-- **********************************************************************************************************************************************************
            MAIN CONTENT
            *********************************************************************************************************************************************************** -->
            <!--main content start-->

            <!--main content start-->
            <section id="main-content">
                <section class="wrapper site-min-height">

                    <h3><i class="fa fa-angle-right"></i> Nieuws</h3>
                    <div class="row mt">
                        <div class="col-lg-12">
                            <form class="form-horizontal" method="POST" action="handlers/add_news_handle.php">
                                <div class="form-group">
                                    <label class="col-sm-2 col-sm-2 control-label">Onderwerp</label>
                                    <div class="col-sm-4">
                                        <input type="text" class="form-control" name="subject">
                                    </div>
                                </div>
                                <div class="form-group">
                                    <label class="col-sm-2 col-sm-2 control-label">Nieuwsbericht (max 500 tekens)</label>
                                    <div class="col-sm-4">
                                        <textarea required rows = "6" style="min-width: 100%" name="content"></textarea>
                                    </div>
                                </div>
                                <div class="form-group">
                                    <div class="col-sm-6">
                                        <button class="btn btn-default btn-block" type="submit" id="submitForm">Project toeveoegen</button>
                                    </div>
                                </div>
                            </form>
                        </div>

                    </div>

                    <hr>

                    <div class="row mt">
                        <div class="col-lg-12">

                        </div>

                        <ul class="nav nav-tabs">
                            <li class="active"><a data-toggle="tab" href="#home">Nieuws</a></li>
                            <li><a data-toggle="tab" href="#menu1">Archief</a></li>
                        </ul>

                        <div class="tab-content">
                            <div id="home" class="tab-pane fade in active">
                                <table class="table table-bordered table-striped table-condensed">
                                    <thead>
                                        <tr>
                                            <th>Auteur</th>
                                            <th>Onderwerp</th>
                                            <th>Bericht</th>
                                            <th>Datum</th>
                                            <th>Bewerken</th>
                                            <th>Archiveren</th>
                                            <th>Verwijderen</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <tr>
                                            <?php
                                            $sql = "SELECT * FROM news WHERE news_status = 1";
                                            $a = $db->get_array($sql);

                                            foreach ($a as $ni) {
                                                echo '<tr>';
                                                echo '<td>' . $ni['news_author'] . '</td>';
                                                echo '<td>' . $ni['news_subject'] . '</td>';
                                                echo '<td>' . $ni['news_content'] . '</td>';
                                                echo '<td>' . $ni['news_post_date'] . '</td>';
                                                echo '<td><button class="btn btn-default" onclick="editNews(' . $ni['news_id'] . ', \'' . $ni['news_subject'] . '\', \'' . str_replace(PHP_EOL, '\n', $ni['news_content']) . '\')">Bewerken</td>';
                                                echo '<td><button class="btn btn-default" onclick="archNews(' . $ni['news_id'] . ')">Archiveren</td>';
                                                echo '<td><button class="btn btn-default" onclick="deleteNews(' . $ni['news_id'] . ')">Verwijderen</td>';
                                                echo '</tr>';
                                            }
                                            ?>
                                        </tr>                                    
                                    </tbody>
                                </table>
                            </div>
                            <div id="menu1" class="tab-pane fade">
                                <table class="table table-bordered table-striped table-condensed">
                                    <thead>
                                        <tr>
                                            <th>Auteur</th>
                                            <th>Onderwerp</th>
                                            <th>Bericht</th>
                                            <th>Datum</th>
                                            <th>Bewerken</th>
                                            <th>Terugplaatsen</th>
                                            <th>Verwijderen</th>
                                        </tr>
                                    </thead>
                                    <tbody>
                                        <tr>
                                            <?php
                                            $sql = "SELECT * FROM news WHERE news_status = 0";
                                            $a = $db->get_array($sql);

                                            foreach ($a as $ni) {
                                                echo '<tr>';
                                                echo '<td>' . $ni['news_author'] . '</td>';
                                                echo '<td>' . $ni['news_subject'] . '</td>';
                                                echo '<td>' . $ni['news_content'] . '</td>';
                                                echo '<td>' . $ni['news_post_date'] . '</td>';
                                                echo '<td><button class="btn btn-default" onclick="editNews(' . $ni['news_id'] . ', \'' . $ni['news_subject'] . '\', \'' . str_replace(PHP_EOL, '\n', $ni['news_content']) . '\')">Bewerken</td>';
                                                echo '<td><button class="btn btn-default" onclick="archNews(' . $ni['news_id'] . ')">Archiveren</td>';
                                                echo '<td><button class="btn btn-default" onclick="deleteNews(' . $ni['news_id'] . ')">Verwijderen</td>';
                                                echo '</tr>';
                                            }
                                            ?>
                                        </tr>                                    
                                    </tbody>
                                </table>
                            </div>
                        </div>
                    </div>


                </section><! --/wrapper -->
            </section><!-- /MAIN CONTENT -->

            <!--main content end-->
        </section>

        <script>
            function editNews(id, subject, content) {
                $('#myModal').modal('show');
                $('#hiddennewsid').val(id);
                $('#subject').val(subject);
                $('#content').val(content);
            }

            function edit_news_handle() {
                var id = $('#hiddennewsid').val();
                var subject = $('#subject').val();
                var content = $('#content').val();

                $.ajax({
                    url: 'handlers/edit_news_handle.php',
                    method: 'POST',
                    data: {id: id, subject: subject, content: content},
                    dataType: 'text',
                    success: function (data) {
                        switch (data) {
                            case "succes" :
                                location.reload();
                                break;
                            case "failed" :
                                alert(data);
                                break;
                        }
                    }
                });
            }

            function deleteNews(id) {
                $.ajax({
                    url: 'handlers/delete_news_handle.php',
                    method: 'POST',
                    data: {id: id},
                    dataType: 'text',
                    success: function (data) {
                        switch (data) {
                            case "succes" :
                                $('#modalArchDelete').modal('show');
                                $('#archDeleteContent').html('Nieuwsitem verwijderd.');
                                setTimeout(function () {
                                    location.reload();
                                }, 1000);
                                break;
                            case "failed" :
                                alert(data);
                                break;
                        }
                    }
                });
            }

            function archNews(id) {
                $.ajax({
                    url: 'handlers/arch_news_handle.php',
                    method: 'POST',
                    data: {id: id},
                    dataType: 'text',
                    success: function (data) {
                        switch (data) {
                            case "succes" :
                                $('#modalArchDelete').modal('show');
                                $('#archDeleteContent').html('Nieuwsitem gearchiveerd.');
                                setTimeout(function () {
                                    location.reload();
                                }, 1000);
                                break;
                            case "failed" :
                                alert(data);
                                break;
                        }
                    }
                });
            }

        </script>

        <!-- Modal -->
        <div id="myModal" class="modal fade" role="dialog">
            <div class="modal-dialog">

                <!-- Modal content-->
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal">&times;</button>
                        <h4 class="modal-title">Nieuws aanpassen</h4>
                    </div>
                    <div class="modal-body">
                        <form class="form-horizontal" method="POST">
                            <div class="form-group">
                                <label class="col-sm-2 col-sm-2 control-label">Onderwerp</label>
                                <div class="col-sm-10">
                                    <input type="text" class="form-control" id="subject">
                                </div>
                            </div>
                            <div class="form-group">
                                <label class="col-sm-2 col-sm-2 control-label">Nieuwsbericht (max 500 tekens)</label>
                                <div class="col-sm-10">
                                    <textarea required rows = "6" style="min-width: 100%" id="content"></textarea>
                                </div>
                            </div>
                            <input type="hidden" value="" id="hiddennewsid" name="newsid">
                        </form>
                    </div>
                    <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal" onclick="edit_news_handle()">Bijwerken</button>
                    </div>
                </div>

            </div>
        </div>

        <div id="modalArchDelete" class="modal fade" role="dialog">
            <div class="modal-dialog">

                <!-- Modal content-->
                <div class="modal-content">
                    <div class="modal-header">
                        <button type="button" class="close" data-dismiss="modal">&times;</button>
                        <h4 class="modal-title">Nieuws aanpassen</h4>
                    </div>
                    <div class="modal-body">
                        <p id="archDeleteContent"></p>
                    </div>
                    <div class="modal-footer">
                        <button type="button" class="btn btn-default" data-dismiss="modal" onclick="edit_news_handle()">Bijwerken</button>
                    </div>
                </div>

            </div>
        </div>

        <!-- js placed at the end of the document so the pages load faster -->
        <script src="js/jquery.js"></script>
        <script src="js/jquery-2.2.1.min.js"></script>
        <script src="js/bootstrap.min.js"></script>
        <script class="include" type="text/javascript" src="js/jquery.dcjqaccordion.2.7.js"></script>
        <script src="js/jquery.scrollTo.min.js"></script>
        <script src="js/jquery.nicescroll.js" type="text/javascript"></script>
        <script src="js/jquery.sparkline.js"></script>


        <!--common script for all pages-->
        <script src="js/common-scripts.js"></script>

        <!--script for this page-->
        <script src="js/sparkline-chart.js"></script>    
        <script src="js/zabuto_calendar.js"></script>



Het ziet er opzich correct uit, hooguit wat omslachtig. Ik zou toch eens proberen de cache eens te legen en dan verder te testen. Misschien dat iemand anders wat ziet :|
Bedankt Ben van Velzen voor je moeite en vooral snelle reactie!

Wie o wie kan mij helpen of de goede richting in sturen???

Met vriendelijke groet,

Gijs

[size=xsmall]Toevoeging op 22/05/2016 10:12:17:[/size]

Wie? ik moet vooruit

[size=xsmall]Toevoeging op 22/05/2016 10:12:47:[/size]

Helppppp

Reageren