This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Javascript POST an PHP (Anfänger)
#1
//php
 if (isset($_GET['clear'])) {
  if ($_POST['confirm'] == 'send') { 
   $id = $_GET['clear'];
    if ($id > 0)
     {	
	  $query = ("DELETE FROM TelegramStorage WHERE id=$id LIMIT 1");
	  $link->query($query);
	header ("location: monitorOESoft.php");	
   }		
  }	 
 }

//javascript
function myFunction_loeschen() { 
  if (confirm('Wollen Sie den Datensatz wirklich löschen? Alle mit diesem Datensatz zusammenhängenden Daten werden ebenfalls gelöscht!')) {
   $.ajax({
    data: 'send',
    url: 'monitorOESoft.php',
    method: 'POST',	
  }); 
		
  }  else {
 
  }
 }

ein datensatz (tabelle) wurde ausgewählt = https://webserver/oesoft/monitorOESoft.php?clear=1169922
jetzt soll durch eine abfrage sichergestellt werden: "datensatz wirklich löschen?" myFunktion_loeschen()

das abfragefenster geht auf, aber der datensatz wird nicht gelöscht!
ohne confirm (abfragefenster) wird der datensatz gelöscht. 

hier mache ich was falsch? aber was?
Zitieren
#2
Du solltest da noch true benutzen

function myFunction_loeschen() {
  if (confirm('Wollen Sie den Datensatz wirklich löschen? Alle mit diesem Datensatz zusammenhängenden Daten werden ebenfalls gelöscht!')==true) {
   $.ajax({
    data: 'send',
    url: 'monitorOESoft.php',
    method: 'POST',    
  });
  }  else {
         console.log('abrechen gedrückt');
  }
}


so sollte es dann gehen
Als Lösung markieren Zitieren
#3
(16.05.2022, 13:54)admin schrieb: Du solltest da noch true benutzen

function myFunction_loeschen() {
  if (confirm('Wollen Sie den Datensatz wirklich löschen? Alle mit diesem Datensatz zusammenhängenden Daten werden ebenfalls gelöscht!')==true) {
   $.ajax({
    data: 'send',
    url: 'monitorOESoft.php',
    method: 'POST',    
  });
  }  else {
         console.log('abrechen gedrückt');
  }
}


so sollte es dann gehen


danke für deine hilfe! leider geht es noch nicht :-(
Als Lösung markieren Zitieren
#4
 function myFunction_loeschen() { 
  var r = confirm("Sind Sie sich sicher?");
  if(r) { 
	  $.ajax({
          type: 'POST',
          url: 'monitorOESoft.php',
          cache: false,
          data: 'confirm',

 });
  }
  }
 if(isset($_GET['clear']) && isset($_POST['confirm'])) { 
   $id = $_GET['clear'];
    if ($id > 0)
     {	
	  $query = ("DELETE FROM TelegramStorage WHERE id=$id LIMIT 1");
	  $link->query($query);
	header ("location: monitorOESoft.php");	
   }		
  }	
// loeschen -> myFunction_loeschen
					
					field = document.createElement('td');
					image = document.createElement('img');
					image.src = 'web_images/loschen_2.png';
					lnk = document.createElement('a');
					lnk.href = '?clear=' + id;
					lnk.onclick = myFunction_loeschen;
					lnk.appendChild(image);
					field.appendChild(lnk);
					field.style.backgroundColor = elem.getElementsByTagName('background_n')[0].firstChild.nodeValue; 
					field.setAttribute('width', 40);
					line.appendChild(field);

hallo, hat keiner eine idee warum der post befehl nicht funktoniert?
das confirm fenster wird geöffnet!
Als Lösung markieren Zitieren
#5
Das claer aus den Link wird nicht mitgesendet.
Wenn du das über Ajax post machst, ist das get irgendwie weg , wußte ich auch noch nicht so.
. Setze die ID mit in den post rein
function myFunction_loeschen() {
  var r = confirm("Sind Sie sich sicher?");
  if(r) {
      $.ajax({
          type: 'POST',
          url: 'monitorOESoft.php',
          cache: false,
          data: {confirm:'',clear:22},
});
  }
  }
und PHP so
if(isset($_POST['clear']) && isset($_POST['confirm'])) { 
   $id = $_POST['clear'];
    if ($id > 0){    
              echo "gelöscht !"; 
    }  
}
Als Lösung markieren Zitieren
#6

function myFunction_loeschen() {
  var r = confirm("Sind Sie sich sicher?");
  if(r) {
      $.ajax({
          type: 'POST',
          url: 'monitorOESoft.php?clear=22',
          cache: false,
          data: {confirm:''},

});
  }
  }

Mit deinen PHP

if(isset($_GET['clear']) && isset($_POST['confirm'])) { 
   $id = $_GET['clear'];
    if ($id > 0){    
              echo "gelöscht !"; 
    }  
}
Als Lösung markieren Zitieren
#7
muss ich das php script anpassen?

von get auf post clear? so passiert nichts???
Als Lösung markieren Zitieren
#8
So wie meine Beispiele sind. Wenn dann sendest du alles über post , oder änderst die URL in den Ajax teil.
Bei mir funktionieren so beide Beispiele. Ich kann dir ja mal ein echtes testbares Beispiel erstellen

Ich kenne deinen ganzen anderen Code ja nicht .
Selbst wenn das clear im Link steht , sendust du über Ajay kein Get mit .
Deswegen muss alles über POST oder das clear ( GET ) muss mit in der URL bei den Ajaxcode
Als Lösung markieren Zitieren
#9
Tongue 
hier der ganze js code ! es wird kein post gesendet? verstehe es nicht  (
 lnk.onclick = myFunction_loeschen;
)

maxid = 0;
 last = null;
 
 function setdata(){
	table = document.getElementById("scrollContent_unerledigt");
	
	$.get("./alarmdb.php", function(data) {
		for ( let elem of data.getElementsByTagName('data') ){
				
				id = elem.getElementsByTagName('id')[0].firstChild.nodeValue;
				i = parseInt(id);
				if (maxid < id) { 
				
					maxid = i;
					line  = document.createElement('tr');
					
					//Zustaendigkeit
					field = document.createElement('td');
					font = document.createElement('font');
					adress = elem.getElementsByTagName('kreis')[0].firstChild.nodeValue;
					font.innerHTML = adress;
					field.appendChild(font);
					field.setAttribute('width', 40);
					line.appendChild(field);
					
					//Flags 
					field = document.createElement('td');
					text = elem.getElementsByTagName('flags')[0].firstChild.nodeValue;
					image = document.createElement('img');
					if (text=='0') { image.src = 'web_images/Alarm_10.png'}
					if (text=='1048576') { image.src = 'web_images/Alarm_9.png'}
					if (text=='537919488') { image.src = 'web_images/Alarm_9.png'}
					field.appendChild(image);
					field.setAttribute('width', 40);
					line.appendChild(field);

					//Datum
					field = document.createElement('td');
					font = document.createElement('font');
					font.innerHTML = elem.getElementsByTagName('datum')[0].firstChild.nodeValue;
					field.appendChild(font);
					field.setAttribute('width', 160);
					line.appendChild(field);
				
					//Address
					field = document.createElement('td');
					font = document.createElement('font');
					adress = elem.getElementsByTagName('adresse')[0].firstChild.nodeValue;
					font.innerHTML = adress;
					field.appendChild(font);
					field.setAttribute('width', 90);
					line.appendChild(field);
					
					//Subaddress
					field = document.createElement('td');
					text = elem.getElementsByTagName('flags')[0].firstChild.nodeValue;
					group = elem.getElementsByTagName('gruppe')[0].firstChild.nodeValue;
					image = document.createElement('img');
					if (adress[7]=='a') { image.src = 'web_images/Alarm_14.png'}
					if (adress[7]=='b') { image.src = 'web_images/schnecken.png'}
					if (adress[7]=='c') { image.src = 'web_images/Alarm_12.png'}
					if (adress[7]=='d') { image.src = 'web_images/Alarm_7.png'}
					field.appendChild(image);
					field.setAttribute('width', 40);
					line.appendChild(field);
					
					//Bezeichnung
					field = document.createElement('td');
					font = document.createElement('font');
					font.innerHTML = elem.getElementsByTagName('bezeichnung')[0].firstChild.nodeValue; 
					field.appendChild(font);
					field.setAttribute('width', 350);
					line.appendChild(field);
					
					//Icon
					field = document.createElement('td');
					text = elem.getElementsByTagName('flags')[0].firstChild.nodeValue;
					group = elem.getElementsByTagName('gruppe')[0].firstChild.nodeValue;
					image = document.createElement('img');
				    if (group=='RETTUNG') { image.src = 'web_images/rettung_2.png'}
					if (group=='NAVI') { image.src = 'web_images/Alarm_16.png'}
					if (group=='SIRENE') { image.src = 'web_images/Alarm_11.png'}
					if (group=='SERVICE') { image.src = 'web_images/Alarm_6.png'}
					if (group=='EINZELRUF') { image.src = 'web_images/Alarm_8.png'}
					if (group=='FAHRZEUG') { image.src = 'web_images/fahrzeug.png'}
					if (group=='TORSTEUERUNG') { image.src = 'web_images/einstellungen.png'}
					if (group=='UNWETTER') { image.src = 'web_images/regen.png'}
					if (group=='DATAFILE') { image.src = 'web_images/file.png'}
					if (group=='WETTER') { image.src = 'web_images/regen.png'}
					if (group=='SWISSPHONE') { image.src = 'web_images/herunterladen.png'}
					if (group=='MESSAGE') { image.src = 'web_images/email.png'}
					if (group=='SYSTEM') { image.src = 'web_images/settings.png'}
					if (group=='KRANKENTRANSPORT') { image.src = 'web_images/krankentransport_1.png'}
					if (group=='FEUERWEHR') { image.src = 'web_images/feuerloescher.png'}
					if (group=='UEBEROERTLICH') { image.src = 'web_images/server_5.png'}
					if (group=='MULTIMASTER') { image.src = 'web_images/warnen.png'}
					field.appendChild(image);
					field.setAttribute('width', 40);
					line.appendChild(field);
				
					//Kommune
					field = document.createElement('td');
					font = document.createElement('font');
					font.innerHTML = elem.getElementsByTagName('kommune')[0].firstChild.nodeValue;
					field.appendChild(font);
					field.setAttribute('width', 180);
					line.appendChild(field);	

					//Hinweis
					field = document.createElement('td');
					font = document.createElement('font');
					font.innerHTML = elem.getElementsByTagName('hinweis')[0].firstChild.nodeValue;
					field.appendChild(font);
					field.setAttribute('width', 180);
					line.appendChild(field);
					
					//Standort
					field = document.createElement('td');
					font = document.createElement('font');
					font.innerHTML = elem.getElementsByTagName('wache')[0].firstChild.nodeValue;
					field.appendChild(font);
					field.setAttribute('width', 200);
					line.appendChild(field);
					
				        //Memo
					field = document.createElement('td');
					image = document.createElement('img');
					image.src = 'web_images/file.png';
					lnk = document.createElement('a');
					//ink.href = '?modal=' + id;
					lnk.onclick = myFunction_anlegen;
					//lnk.onclick = $('#myModal3').modal();
					//lnk.class = 'data-confirm';
					lnk.appendChild(image);
					field.appendChild(lnk);
					field.setAttribute('width', 40);
					line.appendChild(field);
					
					//Id
					field = document.createElement('td');
					font = document.createElement('font');
					adress = elem.getElementsByTagName('id')[0].firstChild.nodeValue;
					font.innerHTML = adress;
					field.appendChild(font);
					field.setAttribute('width', 90);
					line.appendChild(field);
					
					//Loeschen 
					field = document.createElement('td');
					image = document.createElement('img');
					image.src = 'web_images/loschen_2.png';
					lnk = document.createElement('a');
					//lnk.href = '?test=' + id;
					lnk.onclick = myFunction_loeschen;
					lnk.appendChild(image);
					field.appendChild(lnk);
					field.setAttribute('width', 40);
					line.appendChild(field);
					
					//-----------------------------------------------------------------------------------------------------
					
					
					if (last)
						{
							table.insertBefore(line, last);
						}
					else
						{
							table.appendChild(line);
						}
					last = line;

				}


				
			// console.log(elem.getElementsByTagName('id')[0].firstChild.nodeValue);
		}
	});	
 }
 
 // Seite geladen
 $(function() {
  setdata();	
 });
		
 //Uhrzeit
 function ticken(){
 var stunden, minuten, sekunden;
 var StundenZahl, MinutenZahl, SekundenZahl;
 var heute;
 
 heute = new Date();
 StundenZahl = heute.getHours();
 MinutenZahl = heute.getMinutes();
 SekundenZahl = heute.getSeconds();
 
 if (StundenZahl < 10) {stunden = "0" + StundenZahl + ":";}
  else {stunden = StundenZahl + ":";}
 if (MinutenZahl < 10) {minuten = "0" + MinutenZahl + " ";}
  else {minuten = MinutenZahl + " ";}
 if (SekundenZahl < 10) {sekunden = "0" + SekundenZahl + " ";}
  else {sekunden = SekundenZahl + " ";}
 zeit = stunden + minuten + " Uhr";
 uhr.innerHTML = zeit;
 setdata();
 
 window.setTimeout("ticken();", 1000);
 }
 
 window.onload = ticken;   
 
 function myFunction_anlegen() {
	$('#myModal3').modal();
	
}


 function myFunction_loeschen() {
	 
   $.ajax({
        type: "POST",
        url: "monitorOESoft.php",
        data: {test}, 
        cache: false,

        success: function(){
            alert("OK");
        }
    });
	 
	
  }

  
  function myFunction_pager() {
	
	$('#myModal3').modal();

 }

 if(isset($_POST['test'])) {

              echo "gelöscht !";
}

fehler gefunden!

clear=22 


data: {confirm:'',clear:22},
Als Lösung markieren Zitieren
#10
Funktioniert jetzt alles?
Das clear: 22 hatte ich da rein geschrieben, damit die Variable clear nicht leer ist beim Testen
Als Lösung markieren Zitieren


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste