0

I am trying to send value to modal to query in table from database and display the value that come from WHERE clause that sent from variable I assign it to modal with 'id' attribute I try to save it with javascript in cookie but it show random value and not working correct

here is the link that i click on it to show modal it is in loop in table

<td>
    <a data-toggle="modal" href="#gurantorname" id="'.$payment_row["GuarantorID"].'"> Guarantor Discount</a>
</td>

and here is my modal :

<!-- gurarntour modal-->
<div id="gurantorname" class="modal fade" tabindex="-1" data-width="400">
    <div class="modal-header red">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true"></button>
        <h4 class="modal-title"> اسم الكفيل  </h4>
    </div>
    <div class="modal-body">
        <?php
        if(isset($_COOKIE['myJavascriptVar'])) { 
            $_COOKIE['myJavascriptVar'];
            echo $_COOKIE['myJavascriptVar'];
            $guarantor_sth = $guarantorobj->getguarantorapplicationbyid($_COOKIE['myJavascriptVar']);
            $guarantor_row = $guarantor_sth->fetch();
        ?>
        <label class=" font-blue-dark text-center">
            <strong>
            <?php
                echo $guarantor_row["GuarantorFirstNameAR"].' '.$guarantor_row["GuarantorSecondNameAR"] .' '.$guarantor_row["GuarantorThirdNameAR"].' '.$guarantor_row["GuarantorLastNameAR"] ;
            ?>
            </strong>
        </label>
        <?php  
        }
        ?>
    </div>
    <div class="modal-footer text-right">
        <a target="_blank"  class="btn green" href="index.php?action=guarantorinfo&guarantorid=<?php echo $payment_row["GuarantorID"];?>" >معلومات الكفيل</a>
        <button type="submit" data-dismiss="modal" class="btn btn-outline dark" >اخفاء</button>
    </div>
</div>
<!--end of gurarntour modal-->

and here is my javascript that send cookie to modal :

<script type="text/javascript">
    $('#gurantorname').on('show.bs.modal', function(e) {
        var $modal = $(this),
        esseyId = e.relatedTarget.id;
        document.cookie = "myJavascriptVar ="+esseyId ;
        alert(esseyId)
    });
</script>

1 Answer 1

1

I think you should using ajax when user clicks on a link

<a href="javascript:void(0)" class="link" id="'.$payment_row["GuarantorID"].'"> Guarantor Discount</a>

and add the id attribute to label for showing guarantor_row by $payment_row["GuarantorID"]

<label id="guarantor_row" class=" font-blue-dark text-center">

let's create the ajax script

 $('body').on('click','.link',function(){
    var id = $(this).attr('id');
    $.ajax({
        method: "POST",
        url: "getguarantorapplicationbyid.php",
        data: { id:id  }
    })
    .done(function( json_response) {
        var guarantor_row = $.parseJSON(json_response);             
        //set the data to modal and display
        //guarantor_row.GuarantorFirstNameAR
        //guarantor_row.GuarantorSecondNameAR
        $('#guarantor_row').text(guarantor_row.GuarantorFirstNameAR+" "+guarantor_row.GuarantorSecondNameAR);
        $('#gurantorname').modal('show');


    });
 });

getguarantorapplicationbyid.php

$guarantor_sth = $guarantorobj->getguarantorapplicationbyid($_POST['id']);
$guarantor_row = $guarantor_sth->fetch();
echo json_encode(guarantor_row);
Sign up to request clarification or add additional context in comments.

3 Comments

really thank you very helpful , you saved my day ,a clear answer :)
I have button on modal that show all the information of the guarantor , it open another php page and send the guarantorid with it .. how can i do it ??
document.querySelector('#gurantorinfo').setAttribute('href', 'index.php?action=guarantorinfo&guarantorid='+id); and that's how i fix it

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.