- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Hálózatokról alaposan
- Jelszókezelők
- Telekom otthoni szolgáltatások (TV, internet, telefon)
- Reklámblokkolók topikja
- Az iPadOS-re írt appokra is díjat vet ki az Apple
- Vírusirtó topic
- Letartóztatták a bitcoin-Jézust
- Sokat fogyaszt az AI, egyre több az adatközpont, kell az atomenergia
- Súlyos adatvédelmi botrányba kerülhet a ChatGPT az EU-ban
Új hozzászólás Aktív témák
-
Tele von Zsinór
őstag
válasz egyjotakaro2 #4398 üzenetére
Direkt erre letölthető script nem hiszem, hogy lesz (önmagában haszontalan), de rengeteg példakódot, tutorialt találni erre. Ne legyél lusta keresni.
-
Tele von Zsinór
őstag
Pedig ha rögtön a táblázatból akarod módosítani, akkor minden sornak külön formot kell csinálnod. Miért ne lehetne ezt autogenerálva?
Így a formba berakod az elsődleges kulcsot (akár a form actionjébe get paraméterben, akár rejtett mezővel), és csak az ahhoz a termékhez tartozó adatokat fogja elküldeni. -
8nemesis8
veterán
Oracle és php amiben lenne a kérdésem:
<?php
include "kapcsolodas.php";
$res=oci_parse($c,"SELECT NICK FROM USERS WHERE NICK='Gabi'");
oci_execute($res);
echo oci_num_rows($res). "ennyi sor van.<br/>";
while($eredmeny=oci_fetch_array($res)){
print $eredmeny['NICK']."<br/>";
}
oci_close($c);
?>
Szépen kiírja hogy van 4ilyen nickel ellátott user, viszont a sorok számára meg 0át ír.
Miért lehet ez? -
PazsitZ
addikt
-
8nemesis8
veterán
Lenne még egy kérdésem:
Warning: Cannot modify header information - headers already sent by (output started at C:\XAMPP\xampp\htdocs\adatb\belepes.php:21) in C:\XAMPP\xampp\htdocs\adatb\belepes.php on line 55Az oldalon felül html kód van, ami jelszó és nick adatok bevitelére alkalmas 21.sortól kezdődik a php kód.
Ez a hibás rész:
if ($sorok != 0){
print "Helyes nick+pass";
$_SESSION['nick'] = addslashes($_POST['nev']);
$_SESSION['belepett'] = 'OK';
$url=$_SERVER['PHP_SELF'];
$host = $_SERVER['HTTP_HOST'];
header("Location: http://$host$url");De nem értem mi a baja. Egyszerűen belépés után újra akarok tölteni ezt az oldalt, ahol már kiírom a sessionbe tárolt adatokat is.
A felül levő html kód formja a belepes.phpre visz és ugyanitt van ez a fentebb beszúrt hibás kód is. -
PazsitZ
addikt
válasz 8nemesis8 #4407 üzenetére
print van a header előtt (plusz akkor html kód is). Ennyire egyszerű a dolog.
Pár hsz-el ezelőtt pont szó volt a dologról: [link]Tehát vagy az ob_ fgv-eket hesználhatod, vagy építsd fel a kimentet egy változóban és a végén egy if-el vagy header küldesz, vagy tartalmat íratsz ki, vagy mindkettőt, de ebben a sorrendben.
[ Szerkesztve ]
- http://pazsitz.hu -
-
8nemesis8
veterán
válasz PazsitZ #4408 üzenetére
Hú köszi.
Bevallom őszintén, hogy nem olvastam vissza sajnos.
Illetve eddig is tudtam, hogy session-t legelöl kell meghívni a startot, de most már ezt is tudom.
ob_start(); -al kezdve a programot már jól is működik.
Egyébként pontosan mit csinál ez?Mert nem teljesen tiszta. -
radmin
csendes tag
Poup ablak esetében okoz valamilyen változást, ha ezt használom:
<a href="update.php?id=<?php echo $row['id'] ?>">Modosít</a> ?kiegészítettem az én kódomat, de nem igazán jött össze a dolog.
Mert én egy javascriptes popup ablakot szeretnék használni.
A következő kódot használom:
Ami a head tag-ek között van:
<head>
<script type=\"text/javascript\">
function newPopup(url) {
popupWindow = window.open(
url,'popUpWindow','height=700,width=900,left=10,top=10,resizable=no,scrollbars=yes,toolbar=no,menubar=no,location=no,directories=no,status=no')
}
</script>
</head>Ami pedig a táblázatban, már a body tag-ek között:
<td align=center><b><a href=\"JavaScript:newPopup('modosit.php ?>');\">Módosít</a></b></td>A modosit.php-ban létrehoztam ugyanazt az űrlapot, mint ami korábban a rögzítést végezte. S ezzel az új űrlappal szeretném megoldani a módosítást. Az a fajta mező, amiben szabadon írhatunk nem kell, mert itt is select-et használok, tehát kiválasztja, ami neki kell, s jóidő.
Ráadásul a html részeket echo-val hajtom végre, mert az egész kód <?php ?> között van.
radmin
-
Tele von Zsinór
őstag
-
8nemesis8
veterán
válasz Tele von Zsinór #4411 üzenetére
Értem így már világos, akkor az ob_start() gondolom megnyitja aezt a puffert amibe átmenetileg tárolódik, majd a header lefut és csak ezután amit kimentett.
Bár érdekes, hogy nem használtam ob_end_flush() függvényt, mégis kiírja enélkül is az outputra.
-
1ed
csendes tag
Akkor elég átadni a modosit.php-nek az elsődleges kulcsot, és ott lekérdezni a rekordot. Valahogy így:
...<a href=\"JavaScript:newPopup('modosit.php?id=".$row['id']." ?>');\">...
A "korábban rögzítésre használt" űrlap teljesen jó, csak ha módosítunk valami akkor jó tudni hogy mi az, szóval nem árt ha egy már kitöltött űrlapot kap a felhasználó.''He told me that no one should look for the answer unless they have to because once you see it, everything changes. Your life and the world you live in will never be the same. It's as if you wake up one morning and the sky is falling.''
-
radmin
csendes tag
Ez tökéletesen működik:
<a href=\"JavaScript:newPopup('modosit.php?id=".$row['id']." ?>');\">A popup ablak címsorába gyönyörűen kiírja az adott sor id-jét.
Ha minden igaz, akkor a $row[] értékét meg bírom jeleníteni echo-val
echo "$row[0]"; mivel a tömb nulladik eleme lesz az elsődleges kulcs.
Elméletileg ki kellene írnia, hogy melyik elemről van szó.
Nekem csak az a bajom, hogy ez nem történik meg, tehát úgy tűnik, hogy nincs benne semmi. Vagy én szeretném minden áron rosszul kiíratni a row[] értékét?
Sorry a balga kérdésekért, de korábban jeleztem, hogy nemrég kezdtem a php-val foglalkozni.
radmin
-
tkazmer
addikt
hibakeresésnél sokat segíthet ilyenkor, ha kiiratod az egész tömböt, megnézve, hogy mik vannak benne.
erre remek megoldás a print_r($tomb);(#4413) xTc
ja, dehogy, nem ezért írtam[ Szerkesztve ]
úgy tervezték, hogy kibirjon egy atomtámadást is. De nekünk komolyabb fegyvereink vannak, mint pl Béla bá, a földmunkagépkezelő
-
xTc
aktív tag
Srácok!
Valaki foglalkozott-e már valaha PHP unit teszttel? Kiváncsi lennék, milyen eszközökkel, és hogyan lehet megvalósítani.
-
xTc
aktív tag
válasz Tele von Zsinór #4421 üzenetére
Thx!
-
radmin
csendes tag
Köszönöm, a $_GET[id] eszembe nem jutott volna.
radmin
-
egyjotakaro2
csendes tag
Sziasztok. Megint én vagyok
Találtam a netten egy regisztrációs scriptet vagy mit na szóval, hozzá tettem egy sms-mezőt meg egy active mezőt...
Azt akarom elérni, hogy az adatbázisnál minden felhasználónak én aktiváljam a számláját...
Ezt hogy tudom elérni?
[Ezt] töltöttem le. Előre is köszönöm. -
8nemesis8
veterán
válasz Tele von Zsinór #4415 üzenetére
Elkerülte a figyelmem köszi.
A header-en kívül nincs valami amivel lehet frissíteni az oldalt!?
-
cucka
addikt
válasz 8nemesis8 #4425 üzenetére
A header-en kívül nincs valami amivel lehet frissíteni az oldalt!?
Nincs. Igazából a header-el sem tudod frissíteni az oldalt.
A folyamat úgy működik, hogy ha a felhasználó lekér egy oldalt, akkor a kérés eljut a szerverhez, a szerver pedig valamit csinál, majd visszaküld a felhasználónak valamilyen adatot http protokollon keresztül.Egy php oldal esetén a szerveren az elküldött adat a php kód kimenete lesz. A header() függvénnyel a http adatcsomagok fejlécét tudod módosítani, ezért is hívják header-nek . A szerver oldalon a http fejléc akkor jön létre, amikor a script-ed először kiír valamit a kimenetre (ugyanis a http fejléc mindig meg kell előzze a http adatokat), ezért van az, hogy az első kiírás után a header-t már nem lehet használni. (És ugyanezért nem lehet használni a setcookie-t sem azután, hogy kiírtál valamit, mert a sütikkel kapcsolatos teendők is a http fejlécben találhatók. És ezért nem lehet általában session-t indítani kiírás után, mert az szintén egy cookie létrehozását jelenti)
-
cucka
addikt
válasz 8nemesis8 #4427 üzenetére
Általában véve a php kódot úgy kell megírni, hogy először van az alkalmazáslogika (bármilyen művelet, amit a script-nek el kell végezni) és csak ezután jön a kiírás rész, amikor legyártod a html-t. Ez utóbbinál már semmiféle alkalmazáslogika nincs.
Ha valamilyen sablon rendszert használsz (pl. smarty), akkor gyakorlatilag nincs is más lehetőséged, rá vagy kényszerítve a fent említett két folyamat különválasztására. -
radmin
csendes tag
Sziasztok!
Lenne ismét egy kérdésem.
Jelenleg a vegrehajt.php-ban nézem meg, hogy van e megadva termék, ha nincs, akkor nem hajtódik végre az adatrögzítés az adatbázisban. A következőképpen:
if (mysql_query($sql5, $link)) {
echo "";
}
else{
echo 'HIBA' .mysql_error() . "<br />";
}
Tudom, hogy nem a legszebb megoldás, de legalább működik.Azt mivel lehet megoldani, hogy ha rákattintok a gombra, akkor nézze meg, hogy van e megadva termék, s ha nincs, akkor kiír egy üzenetet, hogy nem adott meg terméket, ha meg van adva termék, akkor továbbmegy a vegrehajt.php-ra.
Röviden: Ha nincs megadva termék, akkor ne másszon át a vegrehajt.php-ra.
Jelenleg így küldöm tovább a form-ot:
<input type='submit' value='Küldés' />Előre is köszönöm!
radmin
-
Sk8erPeter
nagyúr
Esetedben mit jelent az, hogy "van-e megadva termék"? Hol? checkbox-szal kipipálva, radio buttont bejelölve, ... ? Az elég nyilvánvaló volt, hogy submit típusú gombbal küldöd el a formot, de igazából a lényeget nem mondtad el, hogy mit csinál a vegrehajt.php fájlod, meg hogyan kell megadva lennie a különböző termékeknek.
Ezenkívül az if(mysql_query(...)) sorral csak annyit csinálsz, hogy megnézed, hogy a lekérdezés sikeresen végrehajtódott-e, azt nem vizsgálod meg vele, hogy létezik-e ilyen elem az adatbázisban. A mysql_query() sikeres lekérdezés esetén mindenképp valamilyen eredményazonosítóval (vagy true-val) tér vissza, ez pedig azt jelenti, hogy akkor is a feltételvizsgálat igaz ága teljesül, ha a megadott lekérdezésre üres eredményhalmazt ad vissza a MySQL, hiszen szintaktikai és egyéb (táblanév, stb.) hibák nem fordultak elő, csak a megadott szempontok szerint nem létezik olyan elem az adatbázisban.
Érdemes lenne inkább azt vizsgálnod, létezik-e olyan elem az adatbázisban. Na meg azért azt is mondd el, mi a célod, úgy könnyebb segíteni.Sk8erPeter
-
DviDee
csendes tag
Tud valaki valamit a Google Weather Api-ról? Hogyan tudnám beolvasni a weboldalamba az aktuális időjárást vele? Konkrétan ezt: [link]
-
egyjotakaro2
csendes tag
Sziasztok. Megint én
Itt vannak a php kódok : [Reg_check.php] [Register.php] Itt mit vagy hogy írjak át, hogy kézzel keljen aktiválnom a felhasználókat. Amikor beregisztráltak akkor ne tudjonak rögtön belépni, hanem nekem keljen aktiválni őket... Remélem értitek a lényeget. Előre is köszönöm üdv -
PazsitZ
addikt
válasz egyjotakaro2 #4432 üzenetére
Elég ha a regtáblában létrehozol egy mezőt. Így ezen regfile-al alapból 0 lesz.
A beléptetésnél le kell kérned ezt a mezőt és ellenőrizned, hogy manuálisan átírtad-e 1-re vagy még 0.- http://pazsitz.hu -
-
DviDee
csendes tag
Azt még hozzáfűzném a problémámhoz, hogy ez írja ki:
Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: Entity: line 1: parser error : Input is not proper UTF-8, indicate encoding ! Bytes: 0xE9 0x63 0x73 0x2C in /mnt/storage/virtual/domain.hu/htdocs/T/a/weather.php on line 6
Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: w="0" mobile_zipped="1" row="0" section="0" ><forecast_information><city data="P in /mnt/storage/virtual/domain.hu/htdocs/T/a/weather.php on line 6
Warning: SimpleXMLElement::__construct() [simplexmlelement.--construct]: ^ in /mnt/storage/virtual/domain.hu/htdocs/T/a/weather.php on line 6
Fatal error: Uncaught exception 'Exception' with message 'String could not be parsed as XML' in /mnt/storage/virtual/domain.hu/htdocs/T/a/weather.php:6 Stack trace: #0 /mnt/storage/virtual/domain.hu/htdocs/T/a/weather.php(6): SimpleXMLElement->__construct('<?xml version="...') #1 /mnt/storage/virtual/domain.hu/htdocs/T/a/weather.php(31): getWeather() #2 {main} thrown in /mnt/storage/virtual/domain.hu/htdocs/T/a/weather.php on line 6
-
netseft
aktív tag
válasz egyjotakaro2 #4434 üzenetére
login.php, 18-20. sor a lekérdezés, ami neked kell.
20. sor mondjuk valahogy így nézzen ki:
$sql.= " AND jelszo='".$pass."' AND active = 'yes')";
Aktiválatlan usernél ekkor "hibás nick/pass" lesz az üzenet, ami ugye nem feltétlenül igaz, ezt az esetet is érdemes lenne lekezelni.Eladó termékeim: https://tinyurl.com/sefteles
-
netseft
aktív tag
válasz egyjotakaro2 #4437 üzenetére
De ha int típusú meződ van, nem pedig enum, mint ahogy én írtam, akkor ugye active = '1' van írva a kódban active = 'yes' helyett (amennyiben az 1-es érték az aktivált felhasználót jelenti) ? Mert én kipróbáltam, és nálam működik.
Eladó termékeim: https://tinyurl.com/sefteles
-
netseft
aktív tag
válasz egyjotakaro2 #4439 üzenetére
Nincs mit.
Ha ellenőrizni akarod a mező tartalmát, azt így teheted meg például:if (mysql_num_rows($query) !== 0)
{ //Helyes nick+pass
$user = mysql_fetch_assoc($query);
if ($user["active"] == 0)
{
print "nincs aktiválva";
}
else
{
$_SESSION['nick'] = addslashes($_POST['nev']);
$_SESSION['belepett'] = true;
header("Location: ".$_SERVER['PHP_SELF']);
}
}Persze ehhez az előzőleg beleírt AND active = '1' részt ki kell venni az $sql változóból.
[ Szerkesztve ]
Eladó termékeim: https://tinyurl.com/sefteles
-
egyjotakaro2
csendes tag
válasz netseft #4440 üzenetére
Warning: Cannot modify header information - headers already sent by (output started at /belepes.php:3) in /login/login.php on line 33
Most ezt írja ki, lehet nem kellene include-nom a login.php-t? Nem tudom mi van most vele :S
Szerk: Meg ott pont ez van:
$sql.= " AND jelszo='".$pass."'";
$query = mysql_query($sql);
if (mysql_num_rows($query) !== 0)
{ //Helyes nick+pass
$user = mysql_fetch_assoc($query);
if ($user["active"] == 0)
{
print "Nem vagy még aktiválva!";
}
else
{
$_SESSION['nick'] = addslashes($_POST['nev']);
$_SESSION['belepett'] = true;
header("Location: ".$_SERVER['PHP_SELF']);
}
}
else
{//Hibás nick+pass
print "Hibás a Maffiozó neved, vagy hibás a Jelszavad!";
}[ Szerkesztve ]
-
netseft
aktív tag
válasz egyjotakaro2 #4441 üzenetére
Hova include-olni? Mikor írja ezt a hibaüzenetet? Az a kódrészlet jó, nálam futott.
Eladó termékeim: https://tinyurl.com/sefteles
-
netseft
aktív tag
válasz egyjotakaro2 #4443 üzenetére
Még mindig nem értem, hova include-oltál, és miért.
Ha önmagában nem megy a login.php, akkor valamit elírhattál valahol.Eladó termékeim: https://tinyurl.com/sefteles
-
8nemesis8
veterán
válasz egyjotakaro2 #4441 üzenetére
Ezt a hibát az okozza, hogy a login,phpben biztosan van egy sor a header függvény előtt ami outputra akar írni. Én is most kaptam itt erre választ kicsit olvass vissza, érdemes
Ha visszaolvasol akkor láthatod, hogy ob_start() függvény használatával működésképessé teheted. -
egyjotakaro2
csendes tag
Még egy láma kérdés.
print "Bejelentkezve: ".$_SESSION['nick'];
print " <a href=\"logout.php\">Kijelentkezés</a>";
print "Tovább: <a href='xy.s......'>Katt!</a>";Hogy tudom meg csinálni, hogy a .$_SESSION['nick'] -pirosan íródjon és a 3 print-et szét választani, hogy külön sorban legyenek, a <br> -vel már próbálkoztam nem jó :S valakii valami ötlet?
-
8nemesis8
veterán
válasz egyjotakaro2 #4447 üzenetére
Nincs mit.
4448: Színt szerintem cssel adj meg.
Külön sorba pedig tényleg <br>-el tudsz de ugye két típusa van, 2tages- <br>és a </br>, illetve létezik egy 1tages változata is <br /> ezt fűzd hozzá a printhez.
Tehát:
print $_SESSION['nick']."<br />";[ Szerkesztve ]
-
netseft
aktív tag
válasz egyjotakaro2 #4447 üzenetére
@egyjotakaro2: Szívesen. Formázást amúgy tényleg CSS-sel érdemes megadni, nem érdemes belekeverni a PHP kódba.
@8nemesis8: a <br>-nek nincsen <br></br> változata. XHTML-ben kötelező lezárni, ez a <br />, HTML-ben pedig nem kötelező, ez a <br>.
Eladó termékeim: https://tinyurl.com/sefteles
Új hozzászólás Aktív témák
- Házimozi belépő szinten
- Kodi és kiegészítői magyar nyelvű online tartalmakhoz (Linux, Windows)
- Luck Dragon: Asszociációs játék. :)
- Androidos tablet topic
- bb0t: Gyilkos szénhidrátok, avagy hogyan fogytam önsanyargatás nélkül 16 kg-ot
- NVIDIA GeForce RTX 4060 / 4070 S/Ti/TiS (AD104/103)
- Netfone
- sziku69: Szólánc.
- sziku69: Fűzzük össze a szavakat :)
- iPhone topik
- További aktív témák...
- Lenovo Legion 7, 16,0"WQXGA, Ryzen 9 6900HX, 32 GB DDR5, RX6850M XT 12 GB, 1TB SSD, 1,5+ év garancia
- Corsair RM850e 850W Gold Moduláris Tápegység
- Samsung Odyssey Neo G9 Super Ultrawide Gamer Monitor!49"/Mini LED/5120x1440/240hz/1ms/+Ajándék
- Apple Macbook Pro 16" 2019 i7-9th 6Magos 32/512 -75% Touch Bar HUN Radeon Pro 5300M 4GB 3K Retina
- Apple Mac mini M2 2023 8GB 256GB + Xiaomi Mi Desktop 27"-os FullHD monitor egyben
Állásajánlatok
Cég: Ozeki Kft.
Város: Debrecen
Cég: Promenade Publishing House Kft.
Város: Budapest