- India felől közelít egy 7550 mAh-s Redmi
- Samsung Galaxy S23 Ultra - non plus ultra
- Vivo X200 Pro - a kétszázát!
- Xiaomi 14T Pro - teljes a család?
- Okosóra és okoskiegészítő topik
- Motorola Edge 30 Neo - wake up, Jr...
- Hivatalos a OnePlus 13 startdátuma
- Samsung Galaxy Fit 3 - keveset, de jól
- Huawei Mate X6 - keleti oldal, nyugati oldal
- Samsung Galaxy A56 - megbízható középszerűség
Új hozzászólás Aktív témák
-
Nem az okozta a problémát, hogy UTF-8 és ISO-8859-1 is volt a kódban. Én is erre gondoltam első körben, de nem oldotta meg az sem, ha egyezett a kettő.
Szerintem sohasem fogok közös nevezőre kerülni veletek. Én megértem, ha ti sokkal professzionálisabb megoldásokkal álltok elő, de ti meg azt értsétek meg, hogy nekem az elsődleges cél, hogy működjön a projekt, még ha tákolással is.
Ennek ellenére jó hasznát vettem (és remélhetőleg veszem is) a topicnak, szóval oltsatok nyugodtan, nem fogok megsértődni.
MOD: és persze ki is fejtettem.
-
válasz
trisztan94 #15472 üzenetére
Hú, gondoltam, hogy van szebb / jobb / fullosabb megoldás, de én - ahogy megszokhattátok - hajthatatlan vagyok, és maradnék a mail()-nél. Azt a pár karaktert, amit én küldök vele, azt megcsinálja nekem, csak a kódoláson kellene hegeszteni.
-
Valaki használja közületek a PHP mail() függvényét?
Megformáztam HTML doksira, és gmail-en jó is, de freemail-re küldve nem jó a karakterkódolás.
Ezt írtam a head-be:<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">
plusz ezt is hozzátettem:
$headers = 'MIME-Version: 1.0' . "\r\n";
$headers .= 'Content-type: text/html; charset=iso-8859-1' . "\r\n";de ugyanúgy rossz.
Mit lehet (kell) még beállítani, hogy működjön?
-
Megoldódott a probléma. Elmondom, mi volt a baj, de ígérjétek meg, hogy nem nevettek ki.
Localhost-on minden működött, ellenben a szerveren nem tudtam törölni rekordokat a táblákból. Persze, ha megnéztem volna mysql_error();-ral, hogy mi a nyűgje, akkor nem ültem volna a gép előtt fél napot.
A lényeg: a webtárhelyen a DELETE nem került engedélyezésre, valamiért figyelmen kívül hagytam, amikor beállítottam az adatbázist. Atyaég...Eszembe nem jutott volna, hogy ez a hiba, annál is inkább, mert a phpmyadmin felület alól tudtam törölni.
Természetesen ettől függetlenül köszönöm a segítséget!
-
-
-
válasz
fordfairlane #15464 üzenetére
Most már működnek a cookie-s dolgok, és get-tel is el tudom kapni az URL-eket, hála az ob_start()-nak.
Egy olyan szituáció áll most fenn, aminek a megoldásához szerintem mélyebbre kéne ásni a PHP bugyraiban.
A probléma: kosárból akarok törölni elemeket.
A megoldás, ami localhost-on működik is: rákattintok a törlésre a weblapon, ez feldobja az elem sorszámát az URL-be, get-tel elkapom, majd ebből kreálok egy SQL query-t. Eddig szép és jó, el is készül a query, viszont nem hajlandó kitörölni az elemet. Ha az elkészült query-t phpmyadmin-on keresztül manuálisan futtatom le, akkor frankón kitörli.Ahogy mondtam már, localhost-on nincs ezzel bajom. És ebben nincs cookie sem, szóval az sem lehet probléma...
-
Jójó, de a lényegen nem változtat: localhost-on működik minden, "igazi" szerveren pedig még mindig süket némelyik funkció.
-
-
válasz
Sk8erPeter #15457 üzenetére
Mert egy beviteli mező tartalmát mentem a cookie-ba. Próbáltam úgy is, hogy nem írtam be a mysql_real_escape_string()-et, de úgy sem működött.
ob_start()-tal már majdnem mindegyik esetben jó.
-
válasz
csabyka666 #15455 üzenetére
ob_start(); részben megoldotta a problémát, de még mindig van pár eset, amikor nem készül el a cookie.
-
Üdv ismét!
Feltöltöttem webszerverre a projektet, és az a furcsa jelenség állt elő, hogy amikor $_GET-tel akarok kivenni infókat az URL-ből, akkor bizonyos esetekben működik, bizonyos esetekben viszont nem. Localhoston nem volt ilyen gondom, ott minden működött.
Annyi a jó hír, hogy legalább következetes a hiba, mert mindig ugyanott működik, és ugyanott nem működik.Ez a kód azt csinálja, amit kell:
if(isset($_GET['vonalkod'])){
setcookie("vonalkod_modositas", mysql_real_escape_string($_GET['vonalkod']), time()+3600);
setcookie("vonalkod_backup_modositas", mysql_real_escape_string($_GET['vonalkod']), time()+3600);
header("Location: index.php?menu=termek_adatainak_modositasa");
}Ez viszont nem hozza létre a cookie-t:
if(isset($_GET['vonalkod'])){
setcookie("vonalkod_h_arazas", mysql_real_escape_string($_GET['vonalkod']), time()+3600);
header("Location: index.php?menu=arazas#hagyomanyos_arazas");
}A linkben benne van a ...?vonalkod=..., szóval nem értem, miért nem teljesül a feltétel.
Van valami ötletetek így elsőre?
-
válasz
DNReNTi #15451 üzenetére
Köszi, ez szép és jó, de ahogy a leírás is említi, hogy nem kell vacakolni az escape-léssel, azért jó az "i" - én is ezzel győzködöm magam. Szóval én inkább vacakolok, nem akarom az egész projektet átírni.
Aki gyakorlott a témában, annak biztos nem akkora feladat ez, de én még csak abban a fázisban vagyok, hogy örülök, ha működik a kód (amit mellesleg, igaz, sokat fórumoztam miatta, de végülis én írtam, ez nagy szó ám
), szóval nem nagyon akarok mélyebben belenyúlni.
Az escape-lés mellett ellenőrzöm még a bevitt string hosszát, üres stringet nem postolok, több helyen is mintára illesztem a bevitt adatot, valamint az adatbázisban is le van korlátozva karakterhosszra a bevitel maximuma. Erre még rápakolom a mysql_real_escape_string()-et, és ha nem is atombiztos ez a megoldás, a semminél mégiscsak több...MOD: és igen, nyilván nem ez a világ legbiztonságosabb megoldása, de nekem az elsődleges cél, hogy működjön a kód. Ezt elértem, szóval a többi már csak "extra", persze ettől még ugyanúgy fontos.
-
SQL topicban már feltettem ezt a kérdést, de itt lehet, hogy jobb helye van. Szóval.
SQL injection ellen mi (vagy mik) a legjobb PHP függvények? Ezt találtam: mysql_real_escape_string(), és kérdeznélek benneteket, hogy ez elegendő, vagy küldjek rá még másik függvényeket is?
(Nem OOP a projekt, hanem az alap mysql_* függvényeket használom.)Más: eddig ha ' (aposztróf) karakter szerepelt a beszúrt mezőben, akkor mindig hibát dobott az SQL. Most, hogy lekezeltem minden beviteli mezőt mysql_real_escape_string() függvénnyel, már bekerülnek az '-os stringek is az adatbázisba. Ez így rendben van, vagy ezzel nyitottam egy biztonsági rést?
-
válasz
Sk8erPeter #15443 üzenetére
Mindegy is, legalább sikerült segítséget adnom, ez nekem nagy szó.
Amúgy nyilván igazatok van...
-
válasz
TomyLeeBoy #15441 üzenetére
Igazán nincs mit!
-
válasz
TomyLeeBoy #15436 üzenetére
Nekem is volt hasonló problémám az adatbázissal. Vagy az adatbázisban voltak értelmezhetetlen karakterek, de az oldalon jól szerepelt, vagy fordítva. Itt kaptam egy tanácsot a PH-n, hogy írjam oda minden adatbázis-kapcsolódás után, hogy:
mysql_query("SET NAMES SET 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");Nekem ez megoldotta, most mindenhol jó a kódolás.
A head-ben nekem ez szerepel:
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />, az adatbázis illesztése pedig "utf8_general_ci". -
válasz
fordfairlane #15425 üzenetére
Okés, így már bátrabban teszem csak az elejére. Köszi!
-
válasz
fordfairlane #15422 üzenetére
Azért "akadékoskodok" itt, mert annyira mélységeiben nem látom át, ezért kérdezlek benneteket. Nyilván, ha az index.php hívja be a többit, akkor annak az elején is jó a kapcsolódás, de hogy biztos legyek a dolgomban, inkább kérdezek.
Hátha van a PHP-nak valami sajátossága, hogy pl. fájlok behúzásakor is ki kell adni a kapcsolódást (persze nincs ilyen, csak példának írom)...szóval ha vannak rejtett dolgok, akkor azt ti tudjátok, én viszont nem. -
válasz
fordfairlane #15420 üzenetére
Ez biztosan így van, de ahogy mondtam, nekem most az a lényeg, hogy működjön a dolog.
-
-
Sőt, közben eszembe jutott még valami.
Nálam úgy áll össze az oldal szerkezete, hogy van egy index.php fájlom, és ebben a fájlban vizsgálom, hogy éppen melyik menüpontot választotta ki a felhasználó. Érzésem szerint az index.php minden újratöltéskor lefut.
Szóval elegendő lenne csak ennek az elejére tenni a csatlakozást, és kihagyhatom az összes többi fájlból? Mármint, ami az index.php-n belül hívódik meg...? Mennyire jó megoldás ez? -
-
Köszi segítséget mindenkinek!
Az én "projektem" nem túl komoly, persze ettől még jogos, hogy OOP kézenfekvő, nem is ezzel van a probléma.
Esetemben egyetlen adatbázis van, egyetlen névvel/jelszóval, és vélhetően ennyi is marad, szóval úgy érzem, nem szükséges az init.php, de mindegy is, a kérdés igazából az lenne továbbra is, hogy a PHP fájlok elején elegendő-e a csatlakozást megejteni (include-dal vagy anélkül, az most mindegy, a hangsúly a csatlakozáson van), vagy pedig minden egyes query előtt includeoljam a csatlakozós php-t?Vagy pedig a harmadik út: hagyjam úgy, ahogy van most, mert ha csak az elején csatlakozok, vagy ha csak közben, az eredmény ugyanaz lesz?
-
Biztos úgy van, ahogy mondjátok, de nekem ez már tényleg haladó szint.
Az biztos, hogy működik az oldal így is, ahogy most van, szóval akkora butaságot talán nem csináltam...
-
Na, most legyek okos.
Én eddig minden kapcsolódás előtt meghívtam, és nem zártam le soha, de akkor ezen változtatni kellene.
Úgy gondoltam, hogy minden PHP fájl elején lenne egy:
<?php
include('db/sql_connect.php');
mysql_query("SET NAMES SET 'utf8'");
mysql_query("SET CHARACTER SET 'utf8'");
?>
...és akor ezt mindig lefuttatja, amikor betölti az adott oldalt. Így rendben lenne? -
Üdv!
Kérdezek egy alapot...
Az adatbázishoz való csatlakozást elegendő minden PHP fájl elején egyetlen alkalommal meghívni, vagy pedig hívjam meg minden egyes query előtt? -
válasz
Sk8erPeter #15385 üzenetére
De ha csak üreshely karakterek vannak a stringben, akkor ott nem jelez találatot. Azon az oldalon, amit linkeltél, ott arra is működik. Mindegy is, a lényeg, hogy jó!
-
-
Húha, na én itt most kicsit belekeveredtem...
Az str_replace-nek - legalábbis az alap PHP függvények között - nincs mb_ változata.
---
Ha ezt írom:
$str2 = 'ááááááááááéééééééééé';
echo mb_substr($str2, 0, 10)."*";...akkor ugyanúgy fals eredményt kapok. Persze, amennyiben jól értem, hogy az mb_substr() itt most azt csinálja, hogy a 0.-tól a 10. karakterig meghagyja a stringet, majd hozzáfűz egy * karaktert.
Mert én ezt kapom vissza: ááááá*Sanszos, hogy itt is a karakterkódolással van baj, mert az "aaaaaaaaaaeeeeeeeeee" stringre jól működik.
-
válasz
fordfairlane #15377 üzenetére
Ööö, ezzel ki is lehet cserélni?
-
válasz
csabyka666 #15375 üzenetére
No, egyelőre úgy néz ki, sikerül ezzel:
function utf8_substr_replace($str, $repl, $start , $length = NULL ) {
preg_match_all('/./us', $str, $ar);
preg_match_all('/./us', $repl, $rar);
if( $length === NULL ) {
$length = strlen(utf8_decode($str));
}
array_splice( $ar[0], $start, $length, $rar[0] );
return join('',$ar[0]);
}
-
Üdv ismét!
Adódott egy újabb kérdésem. Egy stringet szeretnék módosítani úgy, hogy mondjuk a 10. karaktertől kezdve akármennyi is van utána, tegyen egyetlen * karaktert, és hagyja figyelmen kívül a string további részét.
Ezt használom: substr_replace($string,"*",10);
Ezzel működik is, viszont az ékezetes karakterekkel gondban vagyok, mert ugye nem annyinak számolja, ahány karakter valójában van a stringben, és így fals eredményt kapok.
Azt már megtudtam, hogy ASCII kódolású stringgel kell dolgoznom, és a hosszát is sikerült pontosan meghatároznom ezzel: strlen(utf8_decode($string));
Már "csak" azt kellene megoldani, hogy a substr_replace(); működjön ASCII kódolású stringekre is.
Van erre valami egyszerű, de nagyszerű megoldás?
-
válasz
Sk8erPeter #15367 üzenetére
Köszönöm, működik! Én itt próbáltam meg összerakni, de nem sikerült...valamiért nem tudta értelmezni a szóköz karaktert, pedig néztem whitespace-el is.
Amit te írtál, az azért is jó, mert ha csak szóközökből áll a beírt kifejezést, azt sem fogadja el. Pont ilyen kellett!
-
Üdv mindenkinek!
Hogy lehet ellenőrizni, hogy egy stringben van-e egymás után 2 vagy több szóköz? Nem kell megszámolni, nekem elég az is, ha jelzi.
Próbáltam reguláris kifejezéssel, illetve strpos() függvénnyel, de nem jutottam semmire.Van valami ötletetek?
-
Üdv mindenkinek!
FPDF-el generálok PDF formátumot PHP-ből, és azt szeretném tudni, hogy egy táblázat kirajzolásakor meg lehet-e oldani azt az FPDF-ben, hogy dinamikus legyen a cella mérete (magyarán: a tartalom hosszúságához állítsa be automatikusan)? Manuálisan beállítva működik, viszont így le kell fixálnom előre a cellák méretét, szóval nem túl elegáns a módszer...
Van egy ötletem a PHP-s megvalósításra is: megkeresem azt a cellát, amelyikben a leghosszabb a szöveg, és ahhoz állítom be az összes cella méretét, de ha van valami egyszerűbb megoldás, akkor nem szenvednék ezzel...
Köszönöm a válaszokat előre is!
-
válasz
fordfairlane #15284 üzenetére
Legyen úgy.
-
Na, itt kaptam mindkét oldalról. Elsődleges szempont, hogy működjön, de persze az sem hátrány, ha nem pazarol az erőforrással.
Én ezek után a BIGINT-tel szemeztem. Az 8 byte-on tárol, kérdés az, hogy a VARCHAR mennyin tárolnál a 13 számjegyet.
-
válasz
fordfairlane #15279 üzenetére
Melyik a "hatékonyabb"?
-
-
Üdv!
Ha adatbázisban pontosan 13 jegyű számokat (vonalkódok) tárolok, akkor milyen INT-ben kell tárolni? Vagy legyen VARCHAR?
Van egy olyan problémám, hogy 3 számjegyű számokat hozzá tudok adni, de 13-nál nem írt semmit az adatbázisba. Gondolom, az lesz a hiba... -
válasz
csabyka666 #15188 üzenetére
No, azt hiszem, megtaláltam.
-
Üdv ismét!
Reguláris kifejezést meg lehet adni úgy, hogy ékezetes karaktereket is elfogadjon? Itt próbáltam úgy, hogy a \ jellel beírom az ékezetes karaktereket egyenként, de nem engedi...
Van erre valami megoldás?
-
válasz
fordfairlane #15184 üzenetére
Rendben, visszaírom erre.
Így volt eredetileg, csak én gondoltam, hogy nem jó a szintaktikája, azért írtam át.
-
-
válasz
trisztan94 #15172 üzenetére
Szóval akkor maradjon inkább ez?
<meta http-equiv="Content-Type" content="text/html" charset="utf-8" />
-
-
válasz
DNReNTi #15170 üzenetére
Köszi!
Egyébként valószínűleg az volt a hiba, hogy a böngésző és az adatbázis karakterkódolása nem egyezett meg, mert ha úgy csinálom, ahogy mondtátok, akkor az újak jók, de a régiek nem, ha pedig a régiekhez odaírom a konverziót(?), akkor azok jók lesznek, viszont az újak nem...
-
-
-
-
Utólag meg lehet változtatni a táblák mezőinek illesztését?
-
Megpróbálom mindkettőt! Köszi!
-
Üdv mindenkinek!
Ismét felteszek egy kérdést, hátha ti egyből nyomjátok rá a választ.
Karakterkódolással van problémám. A Notepad++ "Encode in UTF-8 without BOM"-ra van állítva, az SQL táblákban is beállítottam az illesztést "utf8_hungarian_ci"-re.
Ha ékezetes karaktert viszek be az adatbázisba, akkor azok helyett kriksz-kraszok jelennek meg, de ezeket csak akkor látom annak, ha a PHPMyAdmin felületből megnézem a táblát. Ha innen kiolvasok a weboldalra, akkor jók az ékezetes karakterek is. Ez nem is jelentene problémát, az adatbázist úgyse nézegeti senki adminfelületről, viszont ki kellene írnom pár adatot PDF-be, és ott már megint azok a fura karakterek jelennek meg. Mivel ezt már látja a felhasználó, nem túl elegáns így.FPDF-et használok a fájl generálásához.
Gondolom, valami karakterkódolási beállítás lesz itt a probléma, de nem tudom, hol keressem a hibát, főleg azért, mert nem ismerem (igaz, nekem nem is fontos...) az FPDF működését.
Tudnátok ebben segíteni? Köszönöm előre is!
-
-
-
-
Oké, megvan, ne gondolkodjatok tovább. Rossz volt az escape-elés, azért dobott hibát.
-
válasz
Speeedfire #15144 üzenetére
Hú, ezt nem értem, de szerintem hasonlót akarsz csinálni, mint amit én próbálok.
Én így írtam:
$egyeb_info = "";
foreach($keresokifejezes as $value){
$i++;
$egyeb_info .= "LOWER(egyeb_info) LIKE ";
$egyeb_info .= '\\"%'.$value.'%\\"';
if(count($keresokifejezes) > $i){
$egyeb_info .= " OR ";
}
}Nem tudom, így mennyire érthető, de az a vicc, hogy ha kiíratom echo-val a létrejött stringet, és azt beillesztem az SQL lekérésbe, akkor lefut, viszont ha nem a kifejezést, hanem a $egyeb_info változót teszem be, akkor hibát dob az SQL.
-
-
-
Üdv mindenkinek!
Ismét adódott egy kérdésem, ami részben PHP, részben MySQL...
Keresni akarok egy adatbázisban úgy, hogy egy szövegmezőbe beírom a keresőkifejezést, és annak alapján szűkítem a találati listát. Ez működik is, viszont csak egyetlen szóra fut le, szóval pl. az "ezt akarom keresni" kifejezésre mindig találat nélkül tér vissza.
Hogy tudnám megoldani, hogy szóközzel elválasztott karaktersorozatra is lefusson?
Addig eljutottam, hogy a beírt kifejezést szétszedtem a szóközöknél, és eltároltam egy tömbben.
Innen már működésre tudnám bírni úgy, hogy foreach-el bejárom a tömböt, és minden elemre lefuttatom a lekérdezést, de ez egyrészt nem túl elegáns, másrészt pedig - mivel az SQL lekérdezést annyiszor hívom meg, ahány eleme van a tömbnek - az eredményt nem tudom rendezni...arról nem is beszélve, hogy ez nem túl gazdaságos az erőforrással sem.Van erre a problémára valami egyszerű megoldás?
Köszönöm a segítséget előre is!
-
válasz
Peter Kiss #15055 üzenetére
Igaz, ami igaz, kicsit be vagyok tojva emiatt a JSON dolog miatt. Nem tudom, mennyire kell belemászni.
-
válasz
Peter Kiss #15051 üzenetére
Húh, de ezzel sok elem esetén átláthatatlanok lesznek (legalábbis nekem) a cookie-k.Egyetlen cookie-ban nem lehet megoldani? (JSON nélkül, mert az nekem nagyon magas...
)
Ha létezne valami olyan függvény, amivel lehet figyelni a cookie tartalmát, akkor már azt is meg tudnám oldani, hogy kétszer ugyanaz a szám ne kerüljön bele.
-
Üdv mindenkinek!
Azt szeretném kérdezni tőletek, hogy létezik-e valami megoldás arra, hogy egy cookie tartalmát módosítsam?
Mindezt úgy képzeltem el, hogy pl. van egy cookie-m, aminek a tartalma 1,3,4,5,8...szóval számok, és nekem mondjuk a 4-est ki kéne vennem a sorból, és 1,3,5,8...stb. maradna csak.
Oké, töröljem le, és hozzam létre újra, de akkor is valahogy meg kellene keresnem, hogy hol van az adott elem, amit ki kellene törölni.Néztem több fórumot is, de nem találtam megoldást. Tudtok ebben segíteni?
(Van egy olyan merész elképzelésem, hogy a cookie-nak egyetlen eleme lenne, ami egy tömb, és akkor azt be tudnám járni...ez megoldható esetleg?)
Köszönöm a válaszokat előre is!
-
-
Köszönöm a választ, így frankón működik!
Ahogy újra átnéztem a kódot, már látom, hogy rosszul volt felépítve az egész, illetve - szerintem - még az is hiba volt, hogy először nem azt vizsgáltam, hogy a belép gomb megnyomásra került-e, hanem kapásból a session tartalmát erőltettem, és már ott lehalt a dolog.
-
Köszi a válaszokat, hamarosan ki is próbálom a javaslatokat!
-
Üdv mindenkinek!
Session alapú beléptetést próbálom összehozni, és "majdnem" működik is, viszont van egy kis problémám vele, amiben a segítségeteket szeretném kérni.
Összeraktam egy egyszerű felületet, aminek annyi a lényege, hogy alapesetben csak egy beléptető form-ot lát a felhasználó, és ha megad bármilyen felhasználói nevet, csak azután láthassa az oldal tartalmát. (Nincs benne adatbázis sem, most csak a működés lenne a lényeg.)Ezt a kódot hoztam össze:
<?php
session_start();if(!isset($_SESSION["belepve"]))
{
echo "Az oldal megtekintéséhez be kell jelentkezned!";
echo '
<form method="post">
Felhasználói név: <input type="text" name=username /></br>
<input type="submit" name="belep" value="Belépés" />
</form>';if(isset($_POST["belep"])){
$_SESSION["belepve"] = 1;
$_SESSION["username"] = $_POST["username"];
}
}
else{echo "Üdvözöllek ".$_SESSION["username"];
echo "Az oldal tartalma: blablabla...";
?>Ez működik is, de amikor beírok egy nevet, és rányomok az elküld gombra, megint behozza a bejelentkező felületet, és ismét be kell írnom valamit, vagy frissítenem kell az oldalt. A kilépésnél ugyanez a probléma: 2x kell meghívnom azt a php-t, amiben a session_destroy(); szerepel. Mit rontottam el?
Lehet, hogy kézenfekvő a hiba, de nézzétek el nekem, hogy nem vagyok egy programozó zseni.
Köszönöm a segítséget előre is!
-
válasz
trisztan94 #14956 üzenetére
Húh, ezt nem értem. Van a foreach, abban van benne maga az SQL parancs (SELECT * stb...), illetve ugyancsak a foreach-en belül fetchelem ki a sorokat is.
Vagy hogy...?
-
Üdv mindenkinek!
A segítségetekre / véleményetekre lenne szükségem.
Készítettem egy cookie-t, amit tömbként kezelek, és az elemein foreach-el megyek végig. Eddig érzésem szerint még működik a dolog, mert echo-val kiírja, hogy melyik elemnél tart éppen, tehát a bejárás rendben van.
A probléma, hogy van egy SQL lekérdezésem is, és én azt szeretném elérni, hogy minden egyes ciklusban más-más SQL lekérdezés fusson le - a cookie tartalmának megfelelően, és a problémám igazából az, hogy nem tudok belenyúlni az SQL parancsba minden ciklusban.Sablonosan ez a helyzet:
foreach($c as $value){
$sql = "SELECT * FROM tabla WHERE id=$value"; //ez így persze nem fut le, de a lényeget értitek...
[...]
}
Azt szeretném elérni, hogy a $value értéke minden egyes ciklusban változzon meg, a $c aktuális értékére (ez meg is történik), és ezzel az új értékkel fusson le a lekérés (ez már nem). Ezt hogy tudom elérni?
A konkrét helyzet: a cookie-ban számok vannak, amik egy bevásárlókosár egyes elemeinek indexei (amiket kosárba rakott a felhasználó), és a kosár tartalmát szeretném kilistázni, ezért lenne szükségem az aktuális index-szel történő lekérdezésre.
Szerintem a kód maga jó, mert ha manuálisan átírom a WHERE záradékban az indexet, akkor azokat listázza ki, amik a kosárban vannak.
Köszönöm a segítséget előre is!
-
-
Húh, köszi a választ mindkettőtöknek! Ezt még egy kicsit emésztenem kell, de utána fogok nézni az említett helyeken!
@ fordfairlane: Az utolsó kérdésre közben megkaptam a választ, miszerint mindent nekem kell intéznem.
-
Üdv mindenkinek!
A weblapkészítés topicban már feltettem a kérdésem, onnan irányítottak ide.
Szóval... Szeretnék kérdezni egy SQL-lel kapcsolatos dolgot - MySQL illetve PHP, amivel ezt meg szeretném oldani.
Adott az alábbi rész egy EK-diagramból:
Több-a-többhöz kapcsolat, tehát a szabály értelmében készítenem kell egy további kapcsolótáblát is, amibe bele kell tennem a kettő, már meglévő elsődleges kulcsot, és ezek együtt fogják alkotni a kapcsolótábla elsődleges kulcsát. Eddig tiszta, legalábbis azt hiszem.
Viszont esetemben magának a kapcsolatnak is van tulajdonsága, mégpedig az, hogy egy adott terméket mikor töltöttek fel (érzésem szerint ez nem a termék tulajdonsága, hanem a feltöltésé, azért nem a termékhez tettem). Ezt a tulajdonságot is a kapcsolótáblába kell tennem?További kérdés, hogy a MySQL-lel hogy tudom megértetni ezeket a táblákat? Konkrétan a kapcsolótáblára gondolok, hogy azt miként állítom be, hogy 2 kulcsból jön az elsődleges kulcs, ami csak a kapcsolótáblában elsődleges, mert amúgy idegen kulcs...plusz ugye ott van a feltöltés ideje is.
Utolsó kérdés: amikor például PHP-ből feltöltöm a táblákat adatokkal, akkor a kapcsolótáblával nekem kell foglalkoznom, vagy ezt majd megoldja a MySQL? (Azt már megtudtam, hogy nekem kell ezt lekezelni, de a kérdés továbbra is él: hogyan?)
Köszönöm a segítséget előre is!
Új hozzászólás Aktív témák
Hirdetés
- Subaru topik
- India felől közelít egy 7550 mAh-s Redmi
- Samsung Galaxy S23 Ultra - non plus ultra
- Milyen házat vegyek?
- PlayStation 5
- Házi barkács, gányolás, tákolás, megdöbbentő gépek!
- World of Tanks - MMO
- Vicces képek
- Sütés, főzés és konyhai praktikák
- Vivo X200 Pro - a kétszázát!
- További aktív témák...
- BESZÁMÍTÁS! ASUS H87I-PLUS H87 chipset alaplap garanciával hibátlan működéssel
- ÁRGARANCIA!Épített KomPhone Ryzen 5 7600X 16/32/64GB RAM RX 7700XT 12GB GAMER PC termékbeszámítással
- Azonnali A320 B350 X370 B450 X470 A520 B550 X570 chipset alaplap felvásárlás személyes/csomagküldés
- ÁRGARANCIA!Épített KomPhone i5 13400F 16/32/64GB RAM RX 7700 XT 12GB GAMER PC termékbeszámítással
- Telefon felvásárlás!! iPhone 13 Mini/iPhone 13/iPhone 13 Pro/iPhone 13 Pro Max
Állásajánlatok
Cég: Promenade Publishing House Kft.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest