Programmiersprache – die besten Beiträge

Website lädt Datei nicht hoch, warum?

Moin, kennt sich vielleicht jemand mit PHP und Html aus und weiß warum beim Upload der Datei nicht das Script "upload.php" ausgeführt wird? Versuche mich gerade beim Scripten, stehe allerdings gerade voll auf dem Schlauch... Danke!

<?php include 'header.php'; ?>
<?php
if(!isset($_SESSION['email'])){
  header('location:login.php');
  $target_file = $target_dir . basename($_FILES["fileToUpload"]["name"]);
}
 ?>
      <div class="breadcrumb">
        <div class="container">
            <a class="breadcrumb-item" href="index.php">Home</a>
            <span class="breadcrumb-item active">Welecome <?php echo $_SESSION['email'] ?></span>
            <span class="breadcrumb-item active">Upload Video</span>
        </div>
    </div>
    <section class="static about-sec">
        <div class="container">
            <h1>Upload Video</h1>
            <div class="form">
                <form class="" action="videoUpload.php" method="post">
                    <div class="row">
                        <div class="col-md-6">
                            <input type="hidden" name="id" value="">
                            <label for="name">Name of Video:</label>
                            <input type="text" name="name" value="" placeholder="Fantasy World" required>
                            <label for="video_url">Video URL</label>
                            <input type="file" name="video_url" required>
                            <label for="description">Description</label>
                            <input type="text" name="description" value="" placeholder="">
                            <label for="category">Category</label>
                            <select name="category">
                              <option value="Classic">Classic</option>
                              <option value="Adventerous">Adventerous</option>
                              <option value="Nature">Nature</option>
                              <option value="Others">Others</option>
                            </select>
                          </div>
                        </div>
							<div class="col-lg-8 col-md-12">
							<form action="upload.php" method="post" enctype="multipart/form-data">
							<input type="submit" class="btn black" value="Upload Image" name="submit">
							</form>
                        </div>
                    </div>
                </form>
            </div>
        </div>
    </section>


    <?php include 'footer.php';?>
HTML, Webseite, HTML5, Code, Datenbank, MySQL, PHP, Programmiersprache, Webdesign, Webentwicklung

Wie implementiere ich eine Mehrfachauswahl?

Kann ich es ermöglichen, dass der Benutzer mehrere Marken oder Baujahre gleichzeitig auswählen kann? Wie würde ich den Query entsprechend anpassen?


<?php
    require "includes/conn.inc.php";
?>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Modelle</title>
</head>
<body>
    <h1>Modelle</h1>
    <form method="post">
        <label for="marke">
            Marke
            <input name="marke" type="text">
        </label>
        <label for="modell">
            Modell
            <input name="modell" type="text">
        </label>
        <label for="baujahr">
            Baujahr
            <input name="baujahr" type="text">
        </label>
        <button type="submit">Suchen</button>
    </form>
    <ul>
        <?php
            // Loop through tbl_marken and create WHERE clause
            $where_marke = "";
            if (count($_POST) > 0) {
                if (array_key_exists("marke", $_POST)) {
                    if (strlen($_POST["marke"] > 0)) {
                        $where_marke = "WHERE Markenname LIKE '%" . $_POST["marke"] . "%'";
                    }
                }
            }
            $conn = openConn();
            $markenSql = "
                SELECT 
                    * 
                FROM tbl_marken "
                . $where_marke . "
                ORDER BY Markenname ASC
            ";
            $marken = $conn->query($markenSql) or die($conn->error);
            while ($marke = $marken->fetch_object()) {
                echo "<li>";
                    echo $marke->Markenname;
                echo "</li>";
                
                // Loop through tbl_modell and create WHERE clause
                echo "<ul>";
                    $where_modell = "";
                    if (array_key_exists("modell", $_POST)) {
                        if (strlen($_POST["modell"] > 0)) {
                            $where_modell = " AND Modell LIKE '%" . $_POST["modell"] . "%'";
                        }
                    }
                    $modellSql = "
                        SELECT 
                            * 
                        FROM tbl_modelle 
                        WHERE FIDMarke=" . $marke->IDMarke . $where_modell . "
                        ORDER BY tbl_modelle.Modell ASC
                    ";
                    $modelle = $conn->query($modellSql) or die($conn->error);
                    while ($modell = $modelle->fetch_object()) {
                        echo "<li>";
                            echo $modell->Modell;
                        echo "</li>";   


                        // Loop through baureihen and create WHERE clause
                        echo "<ul>";
                            $where_bau = ["FIDModell=" . $modell->IDModell];
                            if (array_key_exists("baujahr", $_POST)) {
                                if(intval($_POST["baujahr"])>0) {
                                    $where_bau[] = "BaujahrVon<=" . $_POST["baujahr"];
                                    $where_bau[] = "BaujahrBis>=" . $_POST["baujahr"];
                                }
                            }
                            $bauSql = "
                                SELECT 
                                    * 
                                FROM tbl_baureihen 
                                WHERE " . implode(" AND ", $where_bau)
                            ;
                            $baureihen = $conn->query($bauSql) or die($conn->error);
                            while ($baureihe = $baureihen->fetch_object()) {                               
                                echo "<li><a href='modell_teile.php?IDBaureihe=" . $baureihe->IDBaureihe . "'>" . $baureihe->BaujahrVon . " - " . $baureihe->BaujahrBis . " </a></li>";
                            }
                        echo "</ul>";
                    }
                echo "</ul>";
            }
        ?>
    </ul>
</body>
</html>
Datenbank, Programmiersprache

Paypal SDK von USD auf EUR umstellen funktioniert nicht?

Ich habe beide Stellen im Code geändert:

script.src = `https://www.paypal.com/sdk/js?client-id=${clientId}&currency=EUR`;

und

currency_code: 'EUR',

Bekomme jedoch den folgenden Fehler https://pastebin.com/6eNUSdX9

Wichtigster Ausschnitt:

Error: Unexpected currency: EUR passed to order.create. Please ensure you are passing /sdk/js?currency=EUR in the paypal script tag. 

Der Fehler tritt auf, wenn ich USD auf EUR ändere. Hier ist meine

/app/paypal/page.tsx

https://pastebin.com/9GM500eR die ganze datei

Wichtigster Ausschnitt: der mit USD funktioniert:

<PayPalScriptProvider options={{ clientId }}>
            <div className="flex justify-center">
              <PayPalButtons
                style={{
                  layout: 'vertical',
                  color: 'blue',
                  shape: 'rect',
                  label: 'paypal',
                }}
                createOrder={(data, actions) => {
                  if (!actions || !actions.order) {
                    console.error('Fehler: actions.order ist nicht definiert');
                    return Promise.reject('Fehler bei der Erstellung der Bestellung');
                  }
 
                  return actions.order.create({
                    purchase_units: [
                      {
                        amount: {
                          currency_code: 'USD',
                          value: '100.00',
                        },
                      },
                    ],
                    intent: 'CAPTURE'
                  });
                }}
                onApprove={(data, actions) => {
                  if (!actions || !actions.order) {
                    console.error('Fehler: actions.order ist nicht definiert');
                    return Promise.reject('Fehler bei der Genehmigung der Bestellung');
                  }
 
                  return actions.order.capture().then((details) => {
                    console.log('Zahlung erfolgreich abgeschlossen:', details);
                    setPaymentSuccess(true);  // Zeigt die Erfolgsmeldung an
                    setErrorMessage('');  // Setzt die Fehlermeldung zurück
                    return Promise.resolve();
                  });
                }}
                onError={(err) => {
                  console.error('Fehler bei der PayPal-Zahlung:', err);
                  setErrorMessage('Es gab ein Problem bei Ihrer Zahlung. Bitte versuchen Sie es erneut.'); // Zeigt die Fehlermeldung an
                  setPaymentSuccess(false); // Setzt den Zahlungserfolgsstatus zurück
                }}
              />
            </div>
          </PayPalScriptProvider>

Meine

env Datei ist folgendermaßen konfiguriert:
makefile
Code kopieren
NEXT_PUBLIC_PAYPAL_CLIENT_ID = "12345"
PAYPAL_CLIENT_ID = "12345"
PAYPAL_CLIENT_SECRET = "ABCDEF"
PAYPAL_WEBHOOK_SECRET="XYZ123"

Ich habe den currency_code von 'USD' auf 'EUR' geändert und auch die URL des PayPal-Skripts angepasst:

script.src = `https://www.paypal.com/sdk/js?client-id=${clientId}&currency=EUR`;

Trotzdem bekomme ich den Fehler, dass EUR nicht als Währung erkannt wird.

Ich habe die Dokumentation auf PayPal Developer überprüft, und laut dieser ist

EUR

der richtige Währungscode.

  • Ich benutze Next.js 15 und habe auf React 18 downgraden müssen, da React 19 nicht mit
@paypal/react-paypal-js
  • kompatibel ist aber spielt eigentlich keiner olle und sowohl im sandbox oder live modus dasselbe das man nach dem klick auf dem button mit EUR einen fehler bekommt.

Kann mir jemand helfen, was hier das Problem ist?

PC, Computer, Internet, App, Technik, IT, Webseite, JavaScript, Code, Informatik, PayPal, Programmiersprache, sdk, Webentwicklung, node.js

Ist mein Ansatz sicher genug gegen SQL-Injection und andere Angriffe, oder sollte ich zusätzliche Sicherheitsmaßnahmen ergreifen?

<?php
session_start();
include('connection.php');



if (!isset($_SESSION['username'])) {
    die("Session abgelaufen. Bitte loggen Sie sich erneut ein.");
}


$username_input = $_SESSION['username']; 


// SQL-Abfrage abhängig davon, ob der Benutzer Trainer ist
if ($_SESSION["Trainer"] == false) {
    $sql = "
        SELECT 
            u.username,
            k.kursbezeichnung,
            i.nachname AS trainer_name,
            d.path,
            d.displayname
        FROM user u
        JOIN kurs k ON u.kurs_idkurs = k.idkurs
        JOIN internal_user i ON k.internal_user_idinternal = i.idinternal
        JOIN dokumente d ON d.kurs_idkurs = k.idkurs
        WHERE u.username = ?
    ";
} else {
    $sql = "
        SELECT 
            u.username,
            k.kursbezeichnung,
            i.nachname AS trainer_name,
            d.path,
            d.displayname
        FROM internal_user u
        JOIN kurs k ON u.idinternal = k.internal_user_idinternal
        JOIN internal_user i ON k.internal_user_idinternal = i.idinternal
        JOIN dokumente d ON d.kurs_idkurs = k.idkurs
        WHERE u.username = ?
    ";
}



if ($stmt = mysqli_prepare($conn, $sql)) {
    
    mysqli_stmt_bind_param($stmt, "s", $username_input);


    if (mysqli_stmt_execute($stmt)) {
        
        mysqli_stmt_store_result($stmt);


       
        mysqli_stmt_bind_result($stmt, $username, $kursbezeichnung, $trainer_name, $path, $displayname);


       
        $documents = [];
        $course_name = null;


       
        while (mysqli_stmt_fetch($stmt)) {
            $course_name = $kursbezeichnung; 
            $documents[] = [
                'trainer_name' => $trainer_name,
                'path' => $path,
                'displayname' => $displayname
            ];
        }
    } else {
        die("Fehler bei der Abfrageausführung: " . mysqli_error($conn));
    }


    
    mysqli_stmt_close($stmt);
} else {
    die("Fehler bei der Abfragevorbereitung: " . mysqli_error($conn));
}
?>


<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Kursübersicht</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            background-color: #f4f4f9;
            margin: 0;
            padding: 20px;
            text-align: center;
        }


        .course-container {
            margin-top: 20px;
        }


        h1 {
            font-size: 2em;
            color: #2c3e50;
        }


        h2 {
            font-size: 1.5em;
            color: #2980b9;
        }


        h3 {
            font-size: 1.2em;
            color: #7f8c8d;
        }


        .document-list {
            list-style-type: none;
            padding: 0;
        }


        .document-list li {
            margin-bottom: 10px;
        }


        .document-list li a {
            text-decoration: none;
            color: #3498db;
            font-weight: bold;
        }


        .document-list li a:hover {
            color: #e74c3c;
        }
    </style>
</head>
<body>
    <h1>Willkommen, <?= htmlspecialchars($_SESSION['vorname'] ?? 'Nutzer') ?>!</h1>


    <?php if ($course_name): ?>
        <div class="course-container">
            <h2>Kurs: <?= htmlspecialchars($course_name) ?></h2>
            <h3>Trainer: <?= htmlspecialchars($documents[0]['trainer_name']) ?></h3>
            <h3>Dokumente für diesen Kurs:</h3>
            <ul class="document-list">
                <?php foreach ($documents as $doc): ?>
                    <li><a href="<?= htmlspecialchars($doc['path']) ?>" download><?= htmlspecialchars($doc['displayname']) ?></a></li>
                <?php endforeach; ?>
            </ul>
        </div>
    <?php else: ?>
        <p>Keine Dokumente für den Benutzer gefunden.</p>
    <?php endif; ?>
</body>
</html>


Kurs, Programmiersprache

Meistgelesene Beiträge zum Thema Programmiersprache