im Erstellen eines Formulars, das ändern/aktualisieren mein Ticket-Status mit der Option auswählen, aber immer wenn ich einreichen. Es geht nur auf die eigene Seite. Dies ist die Adresse "http://localhost/support/admin-post.php?td=10&id=1", wenn ich auf "Senden" klicke, wird dies "http://localhost/support/admin-post.php?ticketstats%5B%5D=Pending#" passieren. Es sollte zu "status-update.php" gehen. Ich versuchte, es in noch nicht funktioniert setzen, habe ich versucht mit, kann aber nicht die Auswahlwert, das ist bekommen, warum ich php-Methode stattdessen entschied sich, hier ist mein Codesenden immer umleiten auf die gleiche Seite Aktion funktioniert nicht
<div class="hide" id="status">
<form id="myform" role="form" action="ticket.php" method="POST">
<select class="form-control" type="text" name="ticketstats[]">
<option><?php echo $status ?></option>
<option class="disabled">--------------</option>
<option value="Pending">Pending</option>
<option value="Open">Open</option>
<option value="Closed">Closed</option>
</select>
<input class="btn pull-right" type="submit">
<a class="btn pull-left" id="cancelstatus" href="#">Cancel</a>
</form>
</div>
<?php
if(isset($_POST['submit'])){
foreach ($_POST['ticketstats'] as $select)
{
echo "<script>window.open('status-update.php? td=$ticketid&id=$empinfoid&stats=$select','_self')</script>";
}
}
?>
<a class="pull-right" id="editstatus" href="#">Change</a>
<div id="status-duetime" class="post-footer"><?php echo time_elapsed_ago($date) ?> </div>
</div>
</div>
und das ist mein main.js
var change = document.querySelector("#editstatus");
var cancel = document.querySelector("#cancelstatus");
var statuss = document.querySelector("#status");
var nowstatus = document.querySelector("#nowstatus");
var statusduetime = document.querySelector("#status-duetime");
change.addEventListener("click",edits)
cancel.addEventListener("click",edits)
function edits() {
if (statuss.className === "hide") {
statuss.className = "";
statusduetime.className = "hide";
nowstatus.className = "hide";
change.className = "hide";
} else {
statuss.className = "hide";
statusduetime.className = "post-footer";
nowstatus.className = "pending";
change.className = "pull-right";
}
}
und dies ist meine Aktion Status-update.php
<?php
include("database/db_conection.php");
$ticketid = $_GET['td'];
$empinfoid = $_GET['id'];
if($_POST) {
$sql = "UPDATE employee_tickets SET TicketStatus='".$_GET['stats']."' WHERE Id='".$_GET['td']."'";
if (!mysqli_query($conn,$sql)) {
die('Error: ' . mysqli_error($conn));
}
echo "<script>window.open('admin-post.php?td=$ticketid&id=$empinfoid','_self')</script>";
$conn->close();
}
?>
versucht, läuft aber immer noch same aber ich den Namen der Eingabe zeigt auch "http: //localhost/support/admin-post.php? ticketstats% 5B% 5D = Closed & submit = Submit #" ... ich erkenne das bei "
Nein. Übrigens postest du 'localhost' Links, die für niemanden nutzlos sind, die nicht auf deinem PC sind. – RiggsFolly
ja, weil das Unternehmen es von lokalen xampp verwenden wird. Ich bin gerade auf der Arbeit Ausbildung Student. – Jomai