Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Javascript POST an PHP (Anfänger)
#11
(18.05.2022, 12:25)admin schrieb: Funktioniert jetzt alles?
Das clear: 22 hatte ich da rein geschrieben, damit die Variable clear nicht leer ist beim Testen

soweit läuft der "post" befehl jetzt ! danke

es gib zwar noch ein problem im php script, aber sonst läuft es.

der letzte teil im script, wird nicht ausgeführt ???? der rest geht!
PHP-Code:
header ("location: monitorOESoft.php"); 


PHP-Code:
  if(isset($_POST['test'])) { 
   $id $_POST['test'];
    if ($id 0)
     {    
    
  $query = ("DELETE FROM TelegramStorage WHERE id=$id LIMIT 1");
    
  $link->query($query);
    
   }          
    header 
("location: monitorOESoft.php");    
  
Zitieren
#12
Der letzte Teil geht sicherlich , doch der ist ja nur im Ajax request und bekommst du gar nicht mit wenn du nicht in der Konsole schaust.
Wenn du nach den löschen umleiten willst musst du das schon anders machen.
Zb beim PHP Script so
Code:
if(isset($_POST['test'])) {
   $id = $_POST['test'];
    if ($id > 0)
     {    
      $query = ("DELETE FROM TelegramStorage WHERE id=$id LIMIT 1");
      $link->query($query);
       }          
echo 1;
  }
und das js dazu
Code:
function myFunction_loeschen() {
    
   $.ajax({
        type: "POST",
        url: "monitorOESoft.php",
        data: {test},
        cache: false,

        success: function(response){
        if(response==1){
       location.href='monitorOESoft.php';
        }
}
    });
    
    
  }

so ungefähr könnte man es machen.
Habe aber schon gesagt das ich deine Seite mal kommplett sehen muss, weil denke das du vieles ganz anders und einfacher haben könntest
Zitieren
#13
Moin Kinners,



ich habe ein ähnliches Problem und wenig Erfahrung mit js. Ich möchte den Wert eines input type=numbers übergeben und dafür verwende folgenden Code:



function ingredsCalc(){

    var persons = $('#Persons').val();

    $.post("recipe_view.php", { Persons: persons});

}




Ich kann in der Konsole einen POST sehen aber die php $_POST variable bleibt leer(NULL). Was fehlt denn im js Code noch?




Vielen Dank!
Zitieren
#14
Versuche es doch mal so
Code:
function ingredsCalc(){
    var persons = $('#Persons').val();
    $.ajax({
        type: "POST",
        url: "recipe_view.php",
        data: {Persons: persons},
        cache: false,
        success: function(response){

        }
    });
}

Wenn es nicht hilfe musst du mal den ganzen Code zeigen
Zitieren
#15
Funktioniert leider auch nicht. Hier mal etwas mehr Code:

Code:
<div class="form-block w-form">
  <input type="number" onchange="ingredsCalc()" class="text-field w-input" max="25" maxlength="256" name="Persons" step="1" value="<?php if(isset($_POST['Persons'])){echo $_POST['Persons'];}else{echo $load_recipe['persons'];}?>" min="1" id="Persons">
  <input type="text" id="recipe_public" name="recipe_public" value="<?php echo $recipe_id?>" hidden>
    <div class="block-title">Persons:</div>
    <script>
    function ingredsCalc(){
      var persons = $('#Persons').val();
      $.ajax({
         type: "POST",
         url: "recipe_view.php",
         data: {Persons: persons},
         cache: false,
         success: function(response){

         }
      });
    }
    </script>
    </div>
    <div class="block-title">Ingredients:</div>
    <div class="ingredients-text-block w-richtext">
    <?php echo var_dump($_POST['Persons']); ?>
  </div>
</div>
Einen Post kann ich in der Konsole sehen, aber die Variable bleibt leer.
Schwarzer Humor ist wie essen, hat nicht jeder.
Zitieren
#16
Was meinst du mit "variable bleibt Leer " ?
Soll hier
Code:
<div class="ingredients-text-block w-richtext">
    <?php echo var_dump($_POST['Persons']); ?>
  </div>
der gesendete Code drinn stehen ( anzahl der Personen )
Was für ein code steht in der recipe_view.php Daztei ?
Oder ist das ein Affenformular , also eine Datei die sich selbst aufruft ?
Hier sind alle meine Lösungen aus allen Foren. Ich helfe auch in Facebook-chat
Zitieren
#17
Moin,

jupp, Post wird an die gleiche Seite geschickt. Soll dann in dem input type numbers stehen und wird noch weiter verarbeitet.
Schwarzer Humor ist wie essen, hat nicht jeder.
Zitieren
#18
Moin,

hier mein Beitrag dazu:
JavaScript:
Code:
'use strict';
document.addEventListener('DOMContentLoaded', () => {
    if(confirm('Möchten Sie unwiederuflich diesen Datensatz löschen?')==true) {
        let xhr = new XMLHttpRequest();
        let myFormData = FormData();
        myFormData('modus', 'removeData');
        xhr.open('POST', 'monitorOESoft.php');
        xhr.addEventListener('readystatechange', () => {
            if(xhr.status==200&&xhr.readyState==4) {
                let myStatus = xhr.responseText;
                if(myStatus=='success') {
                    alert('Daten wurden erfolgreich gelöscht!');
                }
            }
        });
    }
});
und PHP:
Code:
if(isset($_POST['modus']) && $_POST['modus']!='') {
    $modus = htmlspecialchars($_POST['modus'], ENT_QUOTES);
    if($modus=='removeData') {
        // Code zum Daten enfernen
        if($success) {
            echo 'success';
            exit;
        }
    }
}

VG

rzscout
Zitieren


Gehe zu:


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