Kezdőoldal » Számítástechnika » Programozás » Mi a baj ezzel a php kóddal?

Mi a baj ezzel a php kóddal?

Figyelt kérdés

<?php


$servername = "localhost";

$username = "root";

$password = "P@ssw0rd";

$dbname = "mywebshop";


// Create connection

$conn = new mysqli($servername, $username, $password, $dbname);

// Check connection

if ($conn->connect_error) {

die("Connection failed: ".$conn->connect_error);

}


session_start();


$idProduct = $_GET["idProduct"];

$idCustomer = $_SESSION['idCustomer'];


$sql = "INSERT INTO Order (idCustomer, idProduct)

VALUES ('$idCustomer', '$idProduct')";


mysqli_close($con);


header('Location: /guitars.php');


?>


A probléma: Nem adja hozzá az táblához az értékeket.


1. A kapcsolat jó, különben problémát jelezne ki.


2. A $idProduct és $idCustomer változó értéke is jól. A kód végéről a "header('Location: /guitars.php');"-t kitörölve echoval kiirattam az értékeket. Mindig megfelelőt adott. Plusz az $sql részre random számokat beírva sem rakott be semmilyen értéket sem.


Valószínűleg ezzel lehet a probléma:


$sql = "INSERT INTO Order (idCustomer, idProduct)

VALUES ('$idCustomer', '$idProduct')";


de nem értem, hogy mi ... mert ugyan ez az SQL kód működik a MySQLen belül és ott hozzá tudom adni az értékeket.



2018. jan. 17. 16:55
1 2
 11/16 A kérdező kommentje:
Végre :O Köszönöm szépen :D Mindenkinek megy a like.
2018. jan. 17. 17:30
 12/16 anonim ***** válasza:

Jujj. De nagyon jujj.


"$idProduct = $_GET["idProduct"]; "

és ezt felhasználod a lekérdezésben - ez nagyon veszélyes.


Tessék rendesen szűrni - minimum így:

$idProduct = $conn->real_escape_string($_GET["idProduct"])

de a legszebb lenne, ha lecsekkolnád a $_GET tömb idProduct elemének az értékét (gyanítom csak szám lehet) - erre ott van a preg_match

if (preg_match("/^[0-9]+$/", $_GET["idProduct"])) {

$idProduct = $conn->real_escape_string($_GET["idProduct"])

...

}

2018. jan. 17. 17:52
Hasznos számodra ez a válasz?
 13/16 anonim ***** válasza:
13%
Én csak azt nem értem ha 1 napja programozol, akkor a f#szt kínlódsz az adatbázisokkal?
2018. jan. 17. 19:02
Hasznos számodra ez a válasz?
 14/16 anonim ***** válasza:

Könyv: Tanuljuk meg a php5 használatát 24 óra alatt (illetve mysql helyett használj PDO-t)

Net: [link]

2018. jan. 17. 19:19
Hasznos számodra ez a válasz?
 15/16 anonim ***** válasza:

#14: nem mysql-t használ, hanem legalább mysqli-t.

Másrészt gyanítom ezt a kérdést is:

https://www.gyakorikerdesek.hu/szamitastechnika__weblapkeszi..

feltételezhetőleg a kérdező tette fel, szóval ez valami tanórai anyag, ahol nem PDO-znak (bár tényleg jó dolog...).

2018. jan. 17. 19:25
Hasznos számodra ez a válasz?
 16/16 A kérdező kommentje:

13# Kb 2 napja használom a phpt, de már szeptember óta programozok Javával. Egy kisebb iskolai project része ez a "webshop", ami igazán nem is nevezhető annak.


A feladatnak nem a "kódolás" a lényege. ITSM (Infrastructure & Service Management) órára kell. Inkább az, hogy egy virtuális linux szervert kezelek egy adatbázissal plusz mindent dokumentálok kb 30-40 oldalban. Ez egy 8 hetes kicsi project az egyetemen. És igen ... nem Magyarországon tanulok.



14# Köszönöm szépen, de ennyi elég volt a Phpból és szerencsére többet nem várnak el belőle. Inkább java spring fele fogok menni.


15# Igen MySQLi és igen az a kérdés is én vagyok :) Pont aznap kezdtel el ezzel szórakozni.

2018. jan. 17. 20:36
1 2

Kapcsolódó kérdések:




Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!