मेरे पास वर्तमान समस्या है, मेरी PHP स्क्रिप्ट कुछ जेएस कोड पर मांग कर रही है। इसे PHP इको में घोषित किया गया है। लेकिन जब यह लोड हो रहा है तो यह सीम की तरह है कि पेज लोड होने पर सभी "कार्य" एक बार में ट्रिगर हो जाते हैं।

तो PHP में लोड होने के बाद जब वे अनुपालन करते हैं तो मुझे सभी $ संदेश पॉप-अप मिलते हैं। उदाहरण: अंतिम php alinea पर स्थिति: "Goedgekeurd Door klant" को डेटाबेस में अपडेट किया जाएगा। लेकिन मैं बाद में IF (पहली एलाइनिया) में घोषित पॉपअप प्राप्त करूंगा

मैं चाहता हूं कि स्क्रिप्ट ऊपर से नीचे तक काम करे। (जैसे बाकी PHP कर रहा है)

किसी भी टिप्पणी से पहले, हाँ मुझे पता है कि यह स्क्रिप्ट खराब है, और इंजेक्शन के लिए खुला है। लेकिन यह सिर्फ एक परीक्षण परिदृश्य है। वास्तविक कोड में, ऐसा नहीं है।

यहाँ मेरा कोड है:

<?php
if($status == "Goedgekeurd door klant"){
    $message = "Offerte $oid is reeds beantwoord met de status: Goedgekeurd door klant.";
    echo "<script type='module'>alert('$message');
    window.location.href = 'customer_quote.php?offerteid=$offerteid&comp=$comp&ikey=$ikey&fail=1';
    </script>";
}

if($status == "Afgewezen door klant"){
    $message = "Offerte $oid is reeds beantwoord met de status: Afgewezen door klant.";
    echo "<script type='module'>alert('$message');
    window.location.href = 'customer_quote.php?offerteid=$offerteid&comp=$comp&ikey=$ikey&fail=1';
    </script>";
}

//getting customerid from url
$id = $_GET['id'];
$omschrijving = "$klantnaam heeft offerte $oid goedgekeurd.";
$date = date("d-m-Y G:i");
$link1 = "/modules/quotes/offerte.php?offerteid=$offerteid";
 

//Connect to DB
$companyname = $_GET['comp'];
include("$root/connections/customerdbconnection.php");

// Attempt insert query execution
$sql = "INSERT INTO notifications (klant, omschrijving, link, uid, createdat) VALUES ('$klantnaam', '$omschrijving', '$link1', '$oid', '$date')";
if(mysqli_query($link, $sql)){
    echo "Notificatie gecreeerd!";
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
 
// Attempt insert query execution
$sql = "UPDATE offertes SET status='Goedgekeurd door klant' WHERE offerteid=$offerteid";
if(mysqli_query($link, $sql)){
    $message = "Dankuwel, offerte $oid is door u gemarkeerd als 'Goedgekeurd'.";
    echo "<script type='module'>alert('$message');
    window.location.href = 'customer_quote.php?offerteid=$offerteid&comp=$comp&ikey=$ikey&fail=1';
    </script>"; 
} else{
    echo "ERROR: Could not able to execute $sql. " . mysqli_error($link);
}
// Close connection
mysqli_close($link);
?>
-1
Tim Nijland 22 अक्टूबर 2020, 16:53

2 जवाब

सबसे बढ़िया उत्तर

JS स्क्रिप्ट के अंत में exit(); डालकर इसे ठीक किया।

0
Tim Nijland 26 अक्टूबर 2020, 22:07

इस alert('$message') को इस alert('".$message."') में बदलें

-1
MoviesLiker 22 अक्टूबर 2020, 17:14