Heyo,Daten in der Tabelle mit einem Formular aus einer anderen Tabelle einfügen
Dies ist die api
+----+----------+--------+-------+
| id | name | symbol | price |
+----+----------+--------+-------+
| 1 | bitcoin | btc | 10 |
| 2 | ethereum | eth | 5 |
+----+----------+--------+-------+
Und dies sind benannte Tabelle die Spalten für die Tabelle testing
+----+--------+-------+-------+
| id | symbol | coins | price |
+----+--------+-------+-------+
Was ich erreichen wollen ist für symbol
und price
, die Werte in api
in deneingefügt werden könnenTabelle in ihren jeweiligen Reihen, wenn ich füllen Sie das folgende Formular aus:
<form method="post">
<div class="form-group row justify-content-center">
<label class="col-sm-3 col-form-label">Choose coin</label>
<div class="col-sm-6">
<select class="form-control" name="coin">
<?php
$stmt = $pdo->query('SELECT id, name, symbol FROM api');
while ($row = $stmt->fetch()) {
echo '<option id="'.$row['id'].'" value="'.$row['symbol'].'">'.$row['name'].'</option>';
}
?>
</select>
</div>
</div>
<div class="form-group row justify-content-center">
<label class="col-sm-3 col-form-label">How many coins do you have?</label>
<div class="col-sm-6">
<input type="number" class="form-control" name="coins" placeholder="1">
</div>
</div>
<div class="form-group row justify-content-center text-center">
<div class="col-sm-12">
<button type="submit" class="btn btn-primary">Add</button>
</div>
</div>
</form>
Aber mein Hauptproblem hier ist, dass ich möchte auch etwas einfügen, die nicht innerhalb der api
Tabelle ist. Ich habe <input type="number" class="form-control" name="coins" placeholder="1">
, wo ich eine Nummer eingeben kann und diese Nummer wird in coins
Zeile eingefügt werden.
ich denke, die
<select class="form-control" name="coin">
<?php
$stmt = $pdo->query('SELECT id, name, symbol FROM api');
while ($row = $stmt->fetch()) {
echo '<option id="'.$row['id'].'" value="'.$row['symbol'].'">'.$row['name'].'</option>';
}
?>
</select>
Hat einen Faktor hier auswählen, indem Sie das Auswahlfeld mit mir die Daten aus den ausgewählten echo '<option id="'.$row['id'].'" value="'.$row['symbol'].'">'.$row['name'].'</option>';
holen will, aber ich weiß nicht, wie mit diesem vorwärts zu gehen.
Ich glaube, ich etwas richtig mit diesem Code getan haben:
<?php
$host = '127.0.0.1';
$db = 'db_learning';
$user = 'root';
$pass = '';
$charset = 'utf8mb4';
$dsn = "mysql:host=$host;dbname=$db;charset=$charset";
$opt = [
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC,
PDO::ATTR_EMULATE_PREPARES => false,
];
$pdo = new PDO($dsn, $user, $pass, $opt);
if(!empty($_POST)) {
if(empty($_POST['coins'])) {
#die
die("Please enter how many coins you have.");
}
$stmt = $pdo->prepare("INSERT INTO testing (coin, coins) VALUES (:coin, :coins)");
$stmt->bindParam(':coin', $coin);
$stmt->bindParam(':coins', $coins);
# insert the row
$coin = $_POST['coin'];
$coins = $_POST['coins'];
$stmt->execute();
}
?>
aber es gibt nur Werte mich in coin
und coins
auf Vorlage des Formulars, über dem kein Schock durch, was ich Ich habe es gesagt.
Kann mich jemand hier führen?
Danke und frohe Feiertage von einem Neugeborenen php Neuling.
Sie sind verbindlich die Params vor Ihnen setze den Wert. Tausche sie um und du solltest gut sein – IsThisJavascript
@ WillParky93 Ich habe sie getauscht, aber es hat immer noch keine Daten von der anderen Tabelle namens "api" bekommen. Obwohl es die "Münzen" und "Münzen" -Werte in die "Test" -Tabelle einfügte, wenn ich das Formular einreichte, aber das tat es schon, bevor ich es tauschte. – superladremi