[PHP] Value van een sleutel beinvloed andere value (array)

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Goedendag allemaal,

Ik heb een werkelijk heel raar probleem!

Aan het begin van m'n script, doe ik het volgende:
$react['id'] = intval( $_GET['r_id'] );

Hier ga ik dan een paar dingen mee doen, oa een database query. Na die query wil ik de $react array uitbreiden. Hiervoor de volgende code:
PHP:
1
2
3
4
5
echo $react['id'];
$react['reply'] = mysql_result( $result, 0, 'pr_reply' );
echo $react['id'];
$react['u_id'] = mysql_result( $result, 0, 'pr_u_id' );
echo $react['id'];


Wat krijg ik nu als output? Het volgende:
4a1

4 is de orginele waarde van $react['id'], de a is waarschijnlijk de eerste letter van $react['reply'] en 1 is ook de waarde van $react['u_id'].
De waarde van $react['id'] veranderd dus aan de hand van de andere waardes?!

Weet iemand wat hieraan te doen is?
Alvast bedankt,

Roemer

Acties:
  • 0 Henk 'm!

Verwijderd

Om iets zekerder te zijn van de precieze waardes van $react['id'], zet er eens wat delimiters tussen? Dan kun je tenminste zien waar de éne echo ophoudt en de andere begint.

(Bijvoorbeeld, $react['id'] zou nu de eerste keer 4a1 kunnen zijn en de andere twee keren een lege string, en je zou het verschil niet kunnen zien).

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
ik heb het met verschillende combi's geprobeert, en elke echo geeft 1 teken terug.

Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 16:28
Heel raar inderdaad. Welke PHP versie gebruik je? Heb je al geprobeerd of het te reproduceren is op een andere versie van PHP?

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
De versie is 4.3.8
Ik zal even kijken of het mogelijk is om op een andere versie te testen...

edit: Op PHP 5.0.1 loopt het als een zonnetje; $react['id'] blijft de goede waarde houden.
Lijkt dus op een PHP-parser bug. Hopelijk kan ik de admin zo ver krijgen om er een nieuwe versie op te zetten...

[ Voor 53% gewijzigd door Verwijderd op 28-12-2004 13:33 ]


Acties:
  • 0 Henk 'm!

  • Soultaker
  • Registratie: September 2000
  • Laatst online: 16:28
Het blijft raar; want 4.3.8 is niet heel erg oud. Ik zou zeggen: installeer PHP opnieuw (of upgrade gelijk naar 4.3.10).

Acties:
  • 0 Henk 'm!

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 07-11-2023

kvdveer

Z.O.Z.

Gebruik eens print_r in plaats van echo? Dan kun je ook het datatype zien...

Localhost, sweet localhost


Acties:
  • 0 Henk 'm!

Verwijderd

kvdveer schreef op dinsdag 28 december 2004 @ 23:43:
Gebruik eens print_r in plaats van echo? Dan kun je ook het datatype zien...
Ik denk dat je var_dump() bedoelt.

Acties:
  • 0 Henk 'm!

  • kvdveer
  • Registratie: November 2000
  • Laatst online: 07-11-2023

kvdveer

Z.O.Z.

Verwijderd schreef op woensdag 29 december 2004 @ 00:59:
[...]


Ik denk dat je var_dump() bedoelt.
Die doen ongeveer hetzelfde hoor... :P, alleen is met print_r het verschil tussen een bool en een int (indien die int 0 of 1 is) niet te zien. Ik vind persoonlijk print_r prettiger leesbaar...

Localhost, sweet localhost


Acties:
  • 0 Henk 'm!

  • Rac-On
  • Registratie: November 2003
  • Niet online
ik zou beginnen met
PHP:
1
$react = array();

anders snapt php niet dat het een array is volgens mij?

doet niet aan icons, usertitels of signatures


Acties:
  • 0 Henk 'm!

  • PowerSp00n
  • Registratie: Februari 2002
  • Laatst online: 19-08 08:24

PowerSp00n

There is no spoon

rac-on schreef op woensdag 29 december 2004 @ 10:10:
ik zou beginnen met
PHP:
1
$react = array();

anders snapt php niet dat het een array is volgens mij?
Zonder zou het ook moeten werken, al is het misschien wel netter om inderdaad aan te geven dat het een array is.

Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
rac-on schreef op woensdag 29 december 2004 @ 10:10:
ik zou beginnen met
PHP:
1
$react = array();

anders snapt php niet dat het een array is volgens mij?
This did the trick.
Wel apart, want ik gebruik het nooit, en nu pas krijg ik er problemen mee.

IIG heel erg bedankt, kan ik weer lekker verder met nettjes scripten :)

Acties:
  • 0 Henk 'm!

  • .oisyn
  • Registratie: September 2000
  • Laatst online: 03:42

.oisyn

Moderator Devschuur®

Demotivational Speaker

is $react niet gewoon een string? Want als je een string met [i] benaderd dan geeft ie het ie teken terug. Alleen indexeer je met een string, niet met een integer, waardoor ie altijd positie 0 terug zal geven. Je reassignt dan ook steeds positie 0 in de string

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.

Pagina: 1