[php] vreemd probleem met parameter

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
ik heb in php een functie gemaakt die uit een database aan de hand van een id wat info haalt, en daarna een plaatje print. die functie heet print_image(), en accepteerd 1 parameter, de id van het plaatje.

Nu heb een beetje een erg vreemd probleem hiermee.

stel

ik heb het object $ob met een member pic1_id en pic2_id

PHP:
1
2
3
4
5
6
7
8
9
10
print $ob->pic1_id; // print de waarde 0
print $ob->pic2_id; // print de waarde 1

// dan uit proberen

print_image($ob->pic1_id); // werkt perfect

print_image($ob->pic2_id); // werkt niet?

print_image(1) // werkt ook perfect ???


ik begrijpt het niet, wat kan dit zijn.

de parameter is by value trouwens. en ik doe niet met de parameter in de functie (ik verander hem niet)(de functie is +- 100 regels dus ga niet hiet zetten, de functie werkt overigens perfect dus dat is het niet)

Noushka's Magnificent Dream | Unity


Acties:
  • 0 Henk 'm!

  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 16-08 06:44

CyberSnooP

^^^^ schrijft --->

Misschien een type probleem? Al is het niet erg logisch zou het kunnen zijn dat je persee een integer verwacht en dat de property toevallig een ander type toegewezen heeft gekregen van PHP. Zet er eens (integer) voor, zo dus:
PHP:
8
print_image((integer)$ob->pic2_id); // werkt heeel misschien?

|_____vakje______|


Acties:
  • 0 Henk 'm!

  • ACM
  • Registratie: Januari 2000
  • Niet online

ACM

Software Architect

Werkt hier

(int) dan toch zeker :?

Acties:
  • 0 Henk 'm!

  • CyberSnooP
  • Registratie: Augustus 2000
  • Laatst online: 16-08 06:44

CyberSnooP

^^^^ schrijft --->

mag allebei.. Nogmaals: Tis een wilde gok en ik zie 't als een bugje van php als het zo je probleem oplost.. maar ik weet ook niks beters :)

|_____vakje______|


Acties:
  • 0 Henk 'm!

  • thomaske
  • Registratie: Juni 2000
  • Laatst online: 17-09 07:55

thomaske

» » » » » »

heb je error_reporting op E_ALL staan?
dan zie je misschien wat warnings of notices :?

edit

• maar wat versta je onder 'Werkt niet'
• heb je de functie goed gedebugged?
• wat heb je al geprobeerd?

[ Voor 43% gewijzigd door thomaske op 06-12-2002 13:27 ]

Brusselmans: "Continuïteit bestaat niet, tenzij in zinloze vorm. Iets wat continu is, is obsessief, dus ziekelijk, dus oninteressant, dus zinloos."


Acties:
  • 0 Henk 'm!

  • Michali
  • Registratie: Juli 2002
  • Laatst online: 29-05 22:54
CyberSnooP schreef op 06 December 2002 @ 13:00:
Misschien een type probleem? Al is het niet erg logisch zou het kunnen zijn dat je persee een integer verwacht en dat de property toevallig een ander type toegewezen heeft gekregen van PHP. Zet er eens (integer) voor, zo dus:
PHP:
8
print_image((integer)$ob->pic2_id); // werkt heeel misschien?
he toevallig. ik was net intval($ob->pic2_id) aan het proberen en toen deed ie het wel. Ik haal toch echt de waardes uit een database met pic2_id colom van het type INT. dus. Bij $ob->pic1_id gaf ie gewoon false terug ofzo.

bedankt in ieder geval

Noushka's Magnificent Dream | Unity

Pagina: 1