[PHP/MySQL] Functie pakt string niet *

Pagina: 1
Acties:
  • 49 views sinds 30-01-2008

  • enveekaa
  • Registratie: September 2003
  • Laatst online: 12-05 20:46
Hoi, ik heb een probleem waar ik na meerdere tests echt niet uitkom.

Ik heb de de functies "lees_beschrijving" en "lees_prijs", die werken 100% die heb ik 'los ' getest en werken gewoon, daar ben ik zeker van.
Afijn, ik ga ze nu in dit script gebruiken, ik haal het artikel nummer uit een array, gaat ook nog goed. Nu begint het vreemde, ik krijg een MySQL error dat de syntax niet klopt, de syntax klopt wel, want de funtie werkt dus in andere scripts gewoon.
Dan zou ik zeggen dat dus de string geen waarde heeft bij lees_prijs($artcode_array), maar jawel, die heeft ook de juiste waarde, het hele vreemde is ook, zodra ik dus die 3004 er hard in programmeer, dus lees_prijs(3004); dat ie dan de query foutloos uitvoert, dus aan de functie kan het niet liggen. Logisch dat het dan aan de string zou liggen? ja eigenlijk wel, maar bij een echo blijkt deze string gewoon de waarde 3004 te bevatten.. iemand een idee?

Hier is de code...


PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
if(count($_SESSION['mandje'])>0) {
  unset($mandprijs);
    echo "<center><table cellspacing=0 width=\"80%\" border=\"0\">";
    echo "<tr><th align=left bgcolor=#7FB7D6 width=200>artikelcode</th><th align=left bgcolor=#7FB7D6 width=280>omschrijving</th><th align=left bgcolor=#7FB7D6 width=50>aantal</th><th align=left bgcolor=#7FB7D6 width=70>stukprijs</th><th align=left bgcolor=#7FB7D6 width=50>totaal</th><th align=left bgcolor=#7FB7D6 width=50></th></tr>";
    unset($i);
    foreach($_SESSION['mandje'] as $artcode_array=>$aantal_array) {
        if(($i++) % 2) {
            $kleurcode = "#C3DDE2";
        } else {
            $kleurcode = "#E6F1F7";
        }
        echo $artcode_array;
        // -> $prijs_array = number_format(lees_prijs($artcode_array), 2, '.', '');
        // -> $omschrijving_array = lees_omschrijving($artcode_array);
        echo "<tr><td bgcolor=".$kleurcode.">".$artcode_array."</td>\n";
        echo "<td bgcolor=".$kleurcode.">".$omschrijving_array."</td>\n";
        echo "<td bgcolor=".$kleurcode.">".$aantal_array."</td>\n";
        echo "<td bgcolor=".$kleurcode.">".$prijs_array."</td>\n";
        $totaal_array = $prijs_array*$aantal_array;
        $totaal_array = number_format($totaal_array, 2, '.', '');
        echo "<td bgcolor=".$kleurcode.">".$totaal_array."</td>\n";
        echo "<td bgcolor=".$kleurcode."><a href=\"PH_FDELITEM_7_2_000.php?delitem=".$artcode_array."\"> Verwijderen</a></td></tr>\n";
        $mandprijs = $mandprijs+$totaal_array;
  }
  $mandprijs = number_format($mandprijs, 2, '.', '');
  echo "<tr><td colspan=6 bgcolor=#FFFEF5><br></td></tr>\n";
  echo "<tr><td colspan=6 bgcolor=#FFFEF5>Totaal deze bestelling: ".$mandprijs."</td></tr>\n";
  echo "<tr><td colspan=6 bgcolor=#FFFEF5><a href=PH_FARTINFO_7_2_000.php?art=$artcode_array>Artikel index</a></td></tr>\n";
  echo "</table></tr>\n";
} else {
    echo "Uw winkelwagentje is leeg.<br><a href=PH_FWEBLEES_7_2_000.php>WebLezen</a>\n";
}
?>



Nick

  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 19-05 13:45

gorgi_19

Kruimeltjes zijn weer op :9

Zie P&W FAQ - De "quickstart" :) Ik mis een groot aantal zaken in je post. Om te beginnen een volledige titel.

Verder geef je aan: "ik krijg een MySQL error dat de syntax niet klopt, de syntax klopt wel, want de funtie werkt dus in andere scripts gewoon."

Hij klopt dus niet. Syntaxfout = syntaxfout. Alleen op deze manier wordt het een enorm gokwerk. Je geeft niet aan wat de exacte foutmelding is. Heb je de geparsde query al eens bekeken en gekeken of deze goed is?

Dit topic heeft verder een heel hoog debug gehalte; isoleer de fout, kijk welke variabele welke waarde op welk moment heeft. Klopt dit ook met de verwachtingen? Zie hiervoor P&W FAQ - Leer **** debuggen!!

Om nog verder te gokken: best kans dat er een configuratieverschil is tussen de servers en register_globals de oorzaak is.

Deze gaat iig dicht :)

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Dit topic is gesloten.