PHP – die neusten Beiträge

Fehler bei WooCoomerce Prices by User Rolls Plugin. Wie löse ich ihn?

Hallo, ich bekomme bei vielen einfachen Tätigkeiten bei Wordpress diese Fehlermeldung:

Fatal error: Uncaught Exception: WooCommerce Cart instance not defined in /home/customer/www/kautabak24.de/public_html/wp-content/plugins/woocommerce-prices-by-user-role/common/festi/woocommerce/WooCommerceCartFacade.php:78 Stack trace: #0 /home/customer/www/kautabak24.de/public_html/wp-content/plugins/woocommerce-prices-by-user-role/common/festi/woocommerce/WooCommerceCartFacade.php(24): WooCommerceCartFacade->getCartInstance() #1 /home/customer/www/kautabak24.de/public_html/wp-content/plugins/woocommerce-prices-by-user-role/common/festi/woocommerce/WooCommerceCartFacade.php(16): WooCommerceCartFacade->__construct() #2 /home/customer/www/kautabak24.de/public_html/wp-content/plugins/woocommerce-prices-by-user-role/WooUserRolePricesFrontendFestiPlugin.php(1357): WooCommerceCartFacade::getInstance() #3 /home/customer/www/kautabak24.de/public_html/wp-content/plugins/woocommerce-prices-by-user-role/WooUserRolePricesFrontendFestiPlugin.php(86): WooUserRolePricesFrontendFestiPlugin->_setCartItemsCount() #4 /home/customer/www/ka in /home/customer/www/kautabak24.de/public_html/wp-content/plugins/woocommerce-prices-by-user-role/common/festi/woocommerce/WooCommerceCartFacade.php on line 78

Es gab einen kritischen Fehler auf deiner Website. Bitte überprüfe den Posteingang deiner Website-Administrator-E-Mail-Adresse für weitere Anweisungen.

Die Email dazu bringt mich auch nicht weiter. Hier ein paar Systems Infos:
WordPress-Version 6.2

Aktives Theme: Savoy (Version 2.8.0)

Aktuelles Plugin: WooCommerce Prices By User Role (Version 5.0.2)

PHP-Version 7.4.33
Vielen dank für die Antworten!

Online-Shop, HTML, Webseite, programmieren, WordPress, Code, PHP, Webentwicklung, Fehlermeldung, Wordpress Plugin, Woocommerce

Wie kann der eingegebene Eintrag nach Bestätigung in die Datenbank gespeichert werden?

Hallo,

mit folgendem Code scheint es nicht zu funktionieren, dass die Eingabe nach Bestätigungsfrage nicht in der Datenbank aktualisiert. Warum? Bin neu in PHP
Danke!

 if ($name_select && $name_select !== $_POST["name"]) {

    // Meldung ausgeben, dass bereits ein Eintrag vorhanden ist

    echo "Es ist bereits ein Eintrag in der Spalte $column_name vorhanden. Möchten Sie den Eintrag wirklich überschreiben?";

    echo "<form action='putzgruppen.php' method='post'>";

    echo "<input type='hidden' name='name' value='" . $_POST["name"] . "'>";

    echo "<input type='hidden' name='column_name' value='" . $column_name . "'>";

    echo "<input type='submit' name='confirm' value='Ja'>";

    echo "<input type='submit' name='cancel' value='Nein'>";

    echo "</form>";

  } else {

    if ($count == 0) {

      // Einfügen des Namens in die Datenbank

      $name = $_POST["name"];

      $sql = "INSERT INTO Putzgruppe ($column_name) VALUES ('$name')";

      if (mysqli_query($conn, $sql)) {

        echo "Daten erfolgreich gespeichert.";

        header("Location: putzgruppen.php"); // Weiterleitung zur Datenbankseite

        exit(); // Beenden des Skripts, um ein weiteres Ausführen zu verhindern

      } else {

        echo "Fehler: " . $sql . "<br>" . mysqli_error($conn);

      }

    } else {

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

        // Aktualisierung des bestehenden Eintrags

        $name = $_POST["name"];

        $column_name = $_POST["column_name"];

        $sql = "UPDATE Putzgruppe SET $column_name='$name' WHERE $column_name='$name_select'";

        if (mysqli_query($conn, $sql)) {

          echo "Daten erfolgreich aktualisiert.";

          header("Location: putzgruppen.php"); // Weiterleitung zur Datenbankseite

          exit(); // Beenden des Skripts, um ein weiteres Ausführen zu verhindern

        } else {

          echo "Fehler: " . $sql . "<br>" . mysqli_error($conn);

        }

      }

    }

  }

} else {

  echo "Das Eingabefeld ist leer.";

}

Datenbank, MySQL, PHP

Wie vergleiche ich PHP Variablen mit unterschiedlicher Codierung?

Hallo liebe Community.

Ich suche die Lösung für ein Problem bei der Programmierung mit PHP und Variablen.

Ich möchte gerne einen Wert, den ich über mysqli abgerufen habe mit einer Variable aus einem Array vergleichen.

Das Problem dabei ist, dass bei Umlauten und Sonderzeichen das Programm nicht mitmacht. Die beiden verglichenen Werte müssten gleich sein, werden aber nicht als gleich erkannt.

Hier mein Beispiel:

Datenbank:

id --- vorname --- nachname

1 --- Sabrina --- M&uuml;ller

PHP:

<meta http-equiv="Content-Type" content="text/html; charset=utf-8">  

(Hier ein PHP Abschnitt zur Eintragung in die Datenbank, also demnach auch in UTF8 codiert)

$test = array("Sabrina","M&uuml;ller");

$result = mysqli_query($datenbank,"SELECT vorname, nachname FROM telefonbuch WHERE id='1'");

while($row=mysqli_fetch_array($result,MYSQLI_ASSOC)) {

if($row['nachname']==$test[1])

echo "Erfolg";

else

echo "Kein Erfolg";

}

Ergebnis:

Wenn ich die Seite so aufrufe, kommt "Kein Erfolg".

Die Datenbank umfasst mehr Einträge, also alles andere ist richtig programmiert. Alles hat "Erfolg", nur die Einträge mit ä,ö,ü,ß,@, etc. haben keinen Erfolg.

Auch if($row['nachname']=='Müller') → Kein Erfolg

Auch if($row['nachname']=='M&uuml;ller') → Kein Erfolg

Auch wenn ich beide Werte vorher in Variablen packe → Kein Erfolg

Ein Test mit:

echo mb_detect_encoding($str)

Ergibt bei:

$row['nachname'] → UTF-8

$test[1] → ASCII

Wieso kann ich diese beiden Variablen nicht miteinander vergleichen und was kann ich tun, um dieses Problem mit den Umlauten zu lösen?

Vielen Dank für jede Hilfe.

Liebe Grüße =)

HTML, Webseite, Datenbank, MySQL, PHP

Text unter Bild in HTML hinzufügen?

Ich habe ein Bild. Darunter habe ich ein Text platziert. Allerdings geht der Horizontal von links nach rechts, was es auch soll. Nur soll er da anfangen, wo auch das Bild beginnt und enden, wo das Bild endet. In den zwei Bildern könnt ihr erkennen, wie es es gerade habe und nicht will und wie ich es gerne haben würde.

<!DOCTYPE html>
<html>
<head>
    <title>Film- und Serienbeschreibungen</title>
  


  <style>
    img {
        display: block;
        margin: 0 auto;
        width: 1000px;
        border-radius: 10px;
    }


    body {
        text-align: center;
    }


    p {
        
    }
  </style>
</head>
  <body>
    <img src="mrrobotscene.jpg">
    <h1>Mr. Robot - Beschreibung</h1>
    <p>Mr. Robot ist eine US-amerikanische Fernsehserie, die von Sam Esmail entwickelt wurde. Die Serie handelt von Elliot Alderson, einem jungen Programmierer, der für eine Cyber-Sicherheitsfirma arbeitet und in seiner Freizeit zum Hacker wird. Elliot leidet unter sozialen Ängsten und Depressionen und verfällt in eine Art Schizophrenie, die von seinem imaginären Freund, Mr. Robot, ausgelöst wird</p>
    
  </body>
</html>
Bild zum Beitrag
PC, Computer, Programm, HTML, Webseite, programmieren, CSS, Java, JavaScript, HTML5, Hacking, Informatik, JQuery, PHP, Programmiersprache, Python, Softwareentwicklung, Technologie, Webdesign, Webentwicklung, Visual Studio Code, Frontend-Entwicklung

mehrdemensionales Array aus Datenbank auslesen mit php?

Hallo ich programmiere mit einem kleinem Team eine Onboarding Website für Mitarbeiter. Allerdings haben wir ein Problem beim auslesen unserer Datenbank. wir haben uns mit dem fronted Team abgesprochen dass wir die Daten per Array übergeben. Nun haben wir uns die daten per Array ausgeben lassen, per foreach schleife ausgeben lassen und zurück in mehrdemsionales Array gepackt. Allerdings können wir dieses nur per var_dump ausgeben und nicht mithilfe einer foreach Schleife normal per echo.

Wie können wir das umbauen?

Hier der aktuelle Code:

<?php 


    function getdata() {
    $pdo = new PDO('mysql:host=localhost; dbname=t-systems', 'root', '', [
        PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION
    ]);
    $stmt = $pdo->prepare('SELECT * FROM `user`');
    $stmt->execute();
    $results = $stmt->fetchAll(PDO::FETCH_ASSOC);

    foreach ($results as $result) {
        $Ort = $result['Ort Name'];
        $ID_User = $result['ID'];
        $Vorname = $result['Vorname'];
        $Nachname = $result['Nachname'];
        $Telefonnummer = $result['Telefonnummer'];
        $mail = $result['Email'];
        $PLZ = $result['Plz'];
        $Straße = $result['Strasse'];
        $Hausnummer = $result['Hausnummer'];

        $userdata[] = [$Ort, $ID_User, $Vorname, $Nachname, $Telefonnummer, $mail, $PLZ, $Straße, $Hausnummer];
    }
       var_dump($userdata);

    }
Danke fürs weiterhelfen
Array, Datenbank, MySQL, PHP

wieso PHP Parse error: syntax error, unexpected token ";" in /home/emmanuel/Downloads/hp.php on line 11?

<link rel="stylesheet" href="style.css">
<?php
$db = unserialize(file_get_contents('data.php'));
if($db == false){
        $db = array();
}
if($_POST['mail'] == ''){
        if($_POST['name'] == ''){
                if($_POST['pass'] == ''){a
                        if(!array_key_exists($_POST['mail'], $db){
                                $db[$_POST['mail']] = [$_POST['name'], []];
                                file_put_contents('data.php', serialize($db));
                        } 
                }
        }
}
?>
<form action="" method="post">
    <center>
        <label for="firma_name" >name:</label><br>
        <input type="text" class="input" name="name" autocomplete="off"><br>
        <label for="produkte">email:</label><br>
        <input type="text"  class="input" name="mail" autocomplete="off"><br>
        <label for="adresse">pass:</label><br>
        <input type="text"  class="input" name="pass" autocomplete="off"><br>
        <input type="submit" class="anmelde_button" value="anmelden">
    </center>
</form>

wieso PHP Parse error: syntax error, unexpected token ";" in /home/emmanuel/Downloads/hp.php on line 11?

HTML, Webseite, CSS, JavaScript, HTML5, Datenbank, JQuery, MySQL, PHP, Programmiersprache, Webdesign, Webentwicklung, phpMyAdmin

warum funktioniert dieses xslt script nur im Internet Explorer abere nicht in chrome oder edge?

Hallo,

ich habe ein XSLT Script das eine xml zu einer Tabelle umformen soll. Das Script funktioniert nur in IE11 aber nicht in den anderen Browsern.

...

$index_file="index_station.php";

...

echo '<?xml version="1.0" encoding="ISO-8859-1"?>';
echo '<xsl:stylesheet xmlns="http://www.w3.org/1999/xhtml" >';
?>
<xsl:stylesheet version="1.0"
     xmlns:xsl="http://www.w3.org/1999/XSL/Transform"  
    xmlns:js="http://www.w3.org/1999/xhtml">
<xsl:template match="/">
 

...
      <?php include "index_station_checkbox.php"; ?>
      <hr/>   
      </td></tr>
         <xsl:apply-templates select="KKHABG/PATIENT">
         <xsl:sort select="<?php echo $xmlsort; ?>" />
         </xsl:apply-templates>
        </TABLE> 
     </BODY>
  </HTML>
</xsl:template>

<xsl:template match="PATIENT">
   <tr>
   <td valign="top" class="patientname">
      <xsl:element name="a">
      <xsl:attribute name="href">
      <xsl:value-of select="PatID/@VALUE"/>
      </xsl:attribute>
      <xsl:value-of select="nachname"/>, <xsl:value-of select="vorname"/>
      </xsl:element>
      <br/><xsl:value-of select="alter"/> - Zi./Bett: <xsl:value-of select="FALL/Behand/ort"/></td>
      <td valign="top" widht="100%">
      <table class="befund">
         <xsl:apply-templates select="FALL/Befund" >
         <xsl:sort select="BefZeit" order="descending"/>
         </xsl:apply-templates>   
      </table>
   </td>
   </tr>
   <tr><td colspan="2"><hr/></td></tr>
</xsl:template>

<xsl:template match="FALL/Befund">
<xsl:if test="<?php echo $sourcexml; ?>">
   <tr>
   <td valign="top" width="100px"><xsl:value-of select="Source"/></td>
   <td valign="top" width="40px">
      <div class="tooltip">
      <xsl:element name="a">
      <xsl:attribute name="href">
      <xsl:value-of select="ID/@ZIEL"/>
      <?php echo $var.'&amp;befart='.$befart.'&amp;befundid=';?><xsl:value-of select="ID/@VALUE"/>
      </xsl:attribute>
      <b><xsl:value-of select="ID"/></b>
      </xsl:element>
      <span class="tooltiptext2"><xsl:value-of select="ID/@TOOLTIP"/>      
      </span>
      </div>
   </td>   
   <td valign="top" width="150px"><xsl:value-of select="BefZeit"/></td>
   <td valign="top">
      <div class="tooltip">
      <xsl:choose>
      <xsl:when test="BefArt/@VALUE">
      <xsl:element name="a">
      <xsl:attribute name="href">
      <xsl:value-of select="BefArt/@VALUE"/>
      </xsl:attribute>
      <xsl:attribute name="target" >_blank</xsl:attribute>
      <b><xsl:value-of select="BefArt"/></b>
      </xsl:element>
      </xsl:when>
      <xsl:otherwise>
      <b><xsl:value-of select="BefArt"/></b>   
      </xsl:otherwise>
      </xsl:choose>
      <span class="tooltiptext">
         <!-- <b><xsl:value-of select="BefArt"/></b><br/> /-->
         <xsl:value-of select="BefText" disable-output-escaping="yes"/>
         <br/><br/>
      </span>
      </div>
      </td>
   </tr>
   </xsl:if>
</xsl:template>
</xsl:stylesheet>
HTML, PHP, Webentwicklung, XML

Spotify API Get Methode Blocked?

Moin, hab mal ne Frage, da ich es einfach nicht hin bekomme. Ich habe vor sowas wie eine Musikwunsch Seite für ein Schul Projekt zu coden. Dafür will ich die Spotify API nutzen, damit man über diese Songs suchen kann. Es kommt aber immer in der Netzwerkanalyse der Fehler NS_BINDING_ABORTED, obwohl mein Access Token korrekt ist. Hier ist meine script.js

const API_ENDPOINT = "https://api.spotify.com/v1/search";
const ACCESS_TOKEN = "your_access_token";

function searchSong() {
    let songName = document.getElementById("song-name").value;

    fetch(`${API_ENDPOINT}?q=${songName}&type=track`, {
        headers: {
            "Authorization": `Bearer ${ACCESS_TOKEN}`
        }
    })
    .then(response => response.json())
    .then(data => {
        let songResults = data.tracks.items;

        if (songResults.length > 0) {
            let songList = document.createElement("ul");

            for (let i = 0; i < songResults.length; i++) {
                let song = songResults[i];

                let songItem = document.createElement("li");
                songItem.innerHTML = `<a href="javascript:void(0)" onclick="selectSong('${song.id}')">${song.name} by ${song.artists[0].name}</a>`;

                songList.appendChild(songItem);
            }

            let songResultsDiv = document.getElementById("song-results");
            songResultsDiv.innerHTML = "";
            songResultsDiv.appendChild(songList);
        } else {
            let songResultsDiv = document.getElementById("song-results");
            songResultsDiv.innerHTML = "Sorry, no songs found.";
        }
    })
    .catch(error => {
        const errorMessage = document.getElementById("error-message");
        errorMessage.innerText = error;
    });
}

function selectSong(songId) {
    fetch("db.php", {
        method: "POST",
        body: JSON.stringify({songId: songId}),
        headers: {
            "Content-Type": "application/json"
        }
    })
    .then(response => response.json())
    .then(data => {
        if (data.success) {
            alert("Song added to the list!");
        } else {
            alert("Error adding song to the list.");
        }
    })
    .catch(error => {
        console.log(error);
    });
}

Hier ist dann noch die Index.html:

 <!DOCTYPE html>
<html>
<head>
    <title>DJ Song Request</title>
    <script src="script.js"></script>
</head>
<body>
    <h1>DJ Song Request</h1>
    <form>
        <label for="song-name">Enter song name:</label>
        <input type="text" id="song-name" name="song-name">
        <button type="submit" onclick="searchSong()">Search</button>
    </form>
    <div id="song-results"></div>
</body>
</html>

Vielleicht kann mir ja jemand helfen, da ich echt nicht mehr weiter weiß, im vorraus schon mal Vielen Dank ;D

HTML, Webseite, JavaScript, PHP, Spotify

Meistgelesene Beiträge zum Thema PHP