2016-08-09 5 views
0

Also habe ich eine Website, wo settings.php und saveSettings.php Seite, wo es $_POST Funktionen zur Datenbank einfügen.Zeigt bootstraps modal nach redicted auf Seite

Hier ist ein Teil settings.php

echo ' 
    <form action="saveSettings.php" method="POST"> 
    <div class="form-group"> 
     <textarea class="form-control no-resize" rows="4" id="profilecomment" name="profilecomment"></textarea> 
    </div> 
    <input type="submit" class="btn btn-success" name="submit" style="margin-top:10px" value="Submit" /> 
    </form> 
'; 

und hier Teil saveSettings.php

$userComment = $_POST["profilecomment"]; 

$updateComment = "UPDATE users SET comment = '$userComment' WHERE steamid = '$steamID' "; 

header('Location: settings.php'); 

Dies ist, was ich versucht habe:

ich meine modalen Ladeskript hinzugefügt settings.php Seite

<script> 
    $(window).load(function(){ 
    $('#settingsSave').modal('show'); 
    }); 
</script> 

Und modal Skript:

<div class="modal fade" id="settingsSave" tabindex="-1" role="dialog"> 
    <div class="modal-dialog"> 
    <div class="modal-content"> 
     <div class="modal-header"> 
      <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button> 
     </div> 
     <div class="modal-body"> 
      <p>You have successfully saved your settings!</p>      
     </div>  
    </div> 
    </div> 
</div> 

Ich bin nicht sicher, ob es wegen dem nicht: Pop-up

header('Location: settings.php'); 

Ich hoffe, dass ich etwas Hilfe bekommen kann.

+0

Die 'modal' HTML ist auch in' settings.php' richtig? Können Sie eine 'console.log' in' $ (window) .load (function() {}); 'oder generell Ihre Javascript-Konsole auf Fehler überprüfen? –

+0

Hallo ja es ist, @Javan R Antwort funktioniert. –

Antwort

0

Zuerst, bitte beachten Sie mysql Injection, ich sehe Sie nicht entkommen Sie Ihre POST-Parameter.

es wie folgt tun:

$userComment = mysql_real_escape_string($_POST["profilecomment"]); 

oder Verwendung Mysqli statt mysql

Um Ihre Frage:

$(window).load(function(){ 
     $('#settingsSave').modal('show'); 
}); 

falsch ist, müssen Sie so etwas wie verwenden:

$(document).ready(function() { <? if(isset($_GET['save'])){ echo "$('#settingsSave').modal('show');"; } ?> });

am einen Parameter zu Ihrem neuen Standort passiert

header('Location: settings.php?save'); 
+0

Hallo, ich habe von mysql injection verhindert, ich habe sie nur nicht in meinen Thread eingefügt, da ich nicht danach fragte. Ich habe Ihren Code in der settings.php getestet, er zeigte das Skript jedes Mal, wenn ich die Seite geladen habe, auf saveSettings.php hat es nicht funktioniert. –

+0

Ich sehe, sorry. Ja, es gibt verschiedene Möglichkeiten, dieses Problem zu lösen. Sie können einen Parameter an Ihrem Standort übergeben wie: 'header ('Location: settings.php? Saved');' und dann, wenn dieser Parameter gesetzt ist, können Sie das Modal –

+0

anzeigen Wie sollte der gespeicherte Parameter in JavaScript hinzugefügt werden? Ich habe JS noch nicht so viel gelernt. –