Kezdőoldal » Számítástechnika » Programozás » Működik, de mégis hibát ír....

Működik, de mégis hibát ír. Mi lehet a hiba?

Figyelt kérdés

Egy cikket olvasva kedvet kaptam a programozáshoz és a mai napomat rászánva megpróbáltam egy primitív számológépet összehozni HTML-ben ami működik is,de folyton hibát jelez. Valamint ha próbálom bővíteni a programot már egyáltalán nem működik.

Prog.hu-n is feltettem a kérdést, de gyökerek és letörölték válasz nélkül. Pedig erre egyáltalán nem találtam választ ott.


[link]

[link]



2018. máj. 10. 00:26
1 2
 1/16 anonim ***** válasza:
28%

Az van, amit a hibaüzenet is ír.

Nem definiált értékre hivatkozol.

2018. máj. 10. 00:47
Hasznos számodra ez a válasz?
 2/16 anonim ***** válasza:
100%

if ($muvelet==ad)

Ez lényegében azt jelenti, hogy ha a muvelet nevű változód értéke egyenlő az ad nevű konstans értékével, akkor lépjen az if-ágba. Csakhogy neked nincs ad nevű konstansod. Amit te akarsz, az az, hogy ha a muvelet értéke egyenlő azzal, hogy "ad", akkor lépjen az ágba. Magyarán:


if($muvelet = "ad")


Mert ez íg ymár egy string, és nem egy konstansra való hivatkozás.


Ugyanez pepitában pár sorral lejjebb:

echo "$elso" + "$masodik"


Ezt nem kell idézőjelek közé tenni, mert az $elso és a $masodik nem egy string érték, hanem változónevek. A vicces az, hogy a kettős aposztróf még igazából ki is értékelné a változókat, de a + jel stringek között biztosan nem működne. Tehát ez csak annyi lenne, hogy:

echo $elso + $masodik;

2018. máj. 10. 02:21
Hasznos számodra ez a válasz?
 3/16 anonim ***** válasza:
100%

miért rakod idézőjelbe a változókat?

és miért van, hogy az egyik helyen echot a másikon printet használsz?


(ajánlom, hogy kapcsold be a sorszámokat, hogy könnyebb legyen azonosítani a hiba forrását)


vicces, hogy a változókat idézőjelek közé rajtad, de ami szövegesen érkezik be azt nem, lásd "ad" "von" "szor"


az a hiba, hogy az ad, von, szor úgy van odaírva, mintha egy állandó (konstans) lenne és nem lehet értelmezni ilyen formában, mert a $muvelet egy szöveget tartalmaz, azért működik mégis, mert a hiányzó konstansokat a saját nevével teszi egyenlővé a PHP, ha hivatkozol rá

2018. máj. 10. 06:56
Hasznos számodra ez a válasz?
 4/16 A kérdező kommentje:

Köszönöm szépen a gyors válaszokat, rájöttem, hogy mi volt a hiba.

De ha a printet lecserélem echora a 38. sorban, akkor azt írja rá, hogy váratlan echo.

2018. máj. 10. 11:13
 5/16 anonim ***** válasza:
#4 a "váratlan akármi" az esetek 99%-ában azt szokta jelenteni, hogy valahol lehagytál egy pontosvesszőt.
2018. máj. 10. 11:16
Hasznos számodra ez a válasz?
 6/16 anonim ***** válasza:
Ahogy #5 írja: hiányzik a végéről a pontosvessző. A print ugyanis az echo egyik aliasa, de míg az echo végére kell a pontosvessző, addig a print végére nem.
2018. máj. 10. 11:46
Hasznos számodra ez a válasz?
 7/16 A kérdező kommentje:
Tettem pontos vesszőt, de akkor is ugyan azt írja
2018. máj. 10. 15:36
 8/16 anonim ***** válasza:
Kódot pls, mert így nem látjuk mit szúrtál el.
2018. máj. 10. 16:33
Hasznos számodra ez a válasz?
 9/16 A kérdező kommentje:
2018. máj. 10. 18:35
 10/16 A kérdező kommentje:
sima else-vel a végén még ennyire sem működik
2018. máj. 10. 18:37
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!