login  Naam:   Wachtwoord: 
Registreer je!
 Forum

array printen (Opgelost)

Offline prienstra - 06/01/2010 22:24 (laatste wijziging 07/01/2010 10:10)
Avatar van prienstraMySQL interesse Beste mensen, ik heb een while lus. Ik zeg daar gegevens in een session:
  1. $_SESSION['extra'] .= "|" . $extra_id;

boven de while lus:
  1. $_SESSION['extra'] = "0";


Als ik de session['extra'] wil weergeven op de website, geeft ie steeds "Array". Hoe kan ik deze normaal weergeven?

Ook om het te gebruiken met een query krijg ik een error:

  1. $extra_id = explode("|",$_SESSION['extra']);
  2. $extra_naam = "";
  3.  
  4. for($i = 0; $i < sizeof($extra_id); $i++)
  5. {
  6. $qry2 = mysql_query("SELECT naam FROM kamer_extras WHERE extra_id = $extra_id[$i];",$link) or mooie_mysql_error($_SERVER['PHP_SELF']);
  7.  
  8. while($r2 = mysql_fetch_assoc($qry2))
  9. {
  10. $extra_naam = stripslashes($r2['naam']);
  11. echo "$extra_naam";
  12. }
  13. }

8 antwoorden

Gesponsorde links
Offline marten - 06/01/2010 22:26
Avatar van marten Beheerder PHP.net: foreach

debuggen:
PHP.net: print_r
Offline Ultimatum - 06/01/2010 22:28
Avatar van Ultimatum PHP expert Doe je echo $_SESSION['extra'] of echo $_SESSION? Want echo $_SESSION['extra'] zou gewoon moeten werken.
Offline prienstra - 06/01/2010 22:30 (laatste wijziging 06/01/2010 22:32)
Avatar van prienstra MySQL interesse Als ik het volgende doe;
  1. print_r ($_SESSION[extra]);


Krijg ik:

Array ( [140] => 140 [139] => 139 )

Dat zit ook in de session. Wat moet ik dan doen en hier verder mee te komen?

echo $_SESSION['extra']; geeft Array
Offline Stefan14 - 06/01/2010 23:51
Avatar van Stefan14 PHP gevorderde je moet nog de juiste key meegeven. Zeg maar het id van de plaats waar de gewilde informatie staat, oftewel, de key tussen de haakjes.

Dus echo $_SESSION['extra'][140];
Offline prienstra - 07/01/2010 08:42
Avatar van prienstra MySQL interesse Dat hoeft volgens mij niet. Wel als ik het verder wil gebruiken.
Als ik gewoon een weergave wil hebben van alles wat in de sessie['extra'] zit, is dit normaal ook voldoende:

echo "$session[extra]";
Offline ArieMedia - 07/01/2010 08:50
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
prienstra schreef:
Dat hoeft volgens mij niet. Wel als ik het verder wil gebruiken.
Als ik gewoon een weergave wil hebben van alles wat in de sessie['extra'] zit, is dit normaal ook voldoende:

echo "$session[extra]";
Beetje jammer dat je nooit variabelen tussen quotes moet echoén. Het is altijd
  1. $sNaam = 'henk';
  2. echo 'Hallo ik ben '.$sNaam; // of
  3. echo "Hallo ik ben ".$sNaam;


En dan nog altijd het liefst met singlequote's want dat is netter IMO, zeker als je ook nog eens HTML gaat gebruiken.

verder heeft marten al het antwoord gegeven, maar ik zal hem even voor je uitwerken dan.
  1. $sCont = '';
  2. foreach($_SESSION['extra'] as $sCont) {
  3. $sCont .= $_SESSION['extra'];
  4. }
  5. /**
  6.  * Of zo, maar hier heb je verder geen invloed op de uitkomst, je array word gewoon geprint.
  7. **/
  8. echo '<pre>'.print_r($_SESSION['extra'], 1).'</pre>';
  9.  
  10. /**
  11.  * En wat je zelfs ook nou zou kunnen doen is de tegenhanger van explode gebruiken
  12.  **/
  13. echo implode('|', $_SESSION['extra']);
Offline prienstra - 07/01/2010 10:00
Avatar van prienstra MySQL interesse Het is een opzetje, dus code is idd niet perfect.

Het lag aan de session naam ['extra']. Ik heb dit veranderd naar ['itemextra'] en nu werkt het.

Ik vermoed dat ik ['extra'] op een ander deel van mijn website gebruik (heb geeen tijd om het nu na te kijken).
Offline Abbas - 07/01/2010 10:13
Avatar van Abbas Gouden medaille

Crew .NET
Citaat:
En dan nog altijd het liefst met singlequote's
Niet als je C# gewoon bent, daar mag je niet kiezen. Daar is een Char met single quotes en een String met double. Al kan je een hetgeen je in een Char steekt ook in een String stoppen maar dan wordt het wel anders benaderd.

  1. String someStr = "x";
  2. Char someChr = 'x';
  3. //Is dus niet hetzelfde
:D
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.233s