Miért ír ez a php ennyi hibát mikor még tegnap este semmi baja nem volt?
A codepen HTML/CSS/JS editor, nem PHP és társai.
Ezen a felületen működött tegnap, vagy a gépeden? Mert ezen biztos, hogy nem, a gépeden meg nem tudom mit használsz, ami megzavarodhatott.
Az az elsődlegesen nagy baj, hogy az egész baromi átláthatatlan, és nem akarok azzal foglalkozni, hogy normális képet alakítsak ki neki, hogy ki tudjam találni, mit akarsz ezzel csinálni.
Hogy mégis mondjak valamit, bemásoltam egy php fájlba a kódjaidat, de nekem nem ír ki egy darab hibát sem. Ugyan nem is működik nyilván db kapcsolat hiányában, vagy ha működik is, nem tudom, mire való.
Nem néztem át teljesen (az össze-vissza indentálások nagyon olvashatatlanná teszik az egészet), de így első blikkre
A lekérdezéseknél:
$sql = "SELECT latin FROM translater WHERE magyar = '".mysqli_real_escape_string($conn, $_POST["query"])."';";
illetve:
$sql = "SELECT magyar FROM translater WHERE latin = '".mysqli_real_escape_string($conn, $_POST["query"])."';";
részletezve:
1. SQL-nél ajánlatos a kulcs- és fenntartott szavakat nagy, az azonosítókat (adatbázis-, tábla-, oszlopneveket,...) kis betűvel írni - elkülönül a lekérdezés többi részétől (https://dev.mysql.com/doc/internals/en/coding-style.html )
2. A felhasználótól, a kliens oldalról érkező kéréseket ne add át szűretlenűl az SQL-lekérdezésnek! Biztonsági kockázatot jelent! Tessék szűrni (https://www.php.net/manual/en/mysqli.real-escape-string.php )!
3. Ez igaz az eredmények kiíratásánál is:
$result.= "<a href='#' class='list-group-item list-group-item-action border-1'>".$row["latin"]."</a>";
illetve
$result.= "<a href='#' class='list-group-item list-group-item-action border-1'>".$row["magyar"]."</a>";
egyrészt amikor karakterláncba változót szúrsz be, használd a karakterlánc-összefűző operátort (https://www.php.net/manual/en/language.operators.string.php ) - elkülöníti a karakterláncot a változótól, jobban áttekinthetőbb, "hülyebiztosabb" - másrészt amikor egy asszociatív tömb egyik elemére hivatkozol, az index egy karakterlánc - ne felejtsd el a kezdő és záró idézőjeleket (https://www.php.net/manual/en/language.types.array.php#language.types.array.syntax.accessing )
Ja és a szkript végén ne hagyd le a záró elemet:
?>
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
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!