Toon posts:

[c#/Jscript] Problemen met doorgeven van sessies

Pagina: 1
Acties:
  • 637 views sinds 30-01-2008
  • Reageer

Verwijderd

Topicstarter
Hoi Allemaal,

Ik heb een probleem met het doorgeven van sessies.
Nu is daar wel veel over te vinden, maar mijn probleem heb ik nog niet kunnen oplossen.
Het zit zo. Er wordt een sessievariable aangemaakt in C# - webpagina en deze moet door een JScript pagina worden opgeroepen. Die Sessievariable wil ik graag oproepen in Jscript, maar dan krijg ik Undefined.

De script in C#:

code:
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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
<%@ Page Language="C#"%>
<%@ Import Namespace="System" %>
<%@ Import Namespace="System.Text" %>
<%@ Import Namespace="System.Drawing" %>
<%@ Import Namespace="System.Drawing.Imaging" %>
<%@ Import Namespace="System.Drawing.Text" %>
<%@ Import Namespace="System.Drawing.Drawing2D" %>
<%@ Import Namespace="System.Web.SessionState" %>
<%@ Import Namespace="System.Web.UI" %>
<%@ Import Namespace="System.Web.UI.WebControls" %>
<%@ Import Namespace="System.Web.UI.HtmlControls" %>

<%@ Import Namespace="System.Collections" %>
<%@ Import Namespace="System.ComponentModel" %>
<%@ Import Namespace="System.Data" %>

<script runat="server">

public void Page_Load(object sender, System.EventArgs e)
{

    string text = this.CreateRandomCode(6);
  Session["text"] = text;
  string newtext = (String) Session["text"];
    // De tekst die op het plaatje moet verschijnen
    // string text = Request.QueryString["text"];
    string uname = Request.QueryString["uname"];
    string fullname = Request.QueryString["fullname"];
    string email = Request.QueryString["email"];
    string image = Request.QueryString["image"];
    // string text = "Fotografie: "+fullname+" \nE-Mail:        "+email;
    //string text = Request.QueryString["text"];;
    
    // In welk lettertype deze moet verschijnen
    Font textFont = new Font ( "Arial" , 10 , FontStyle.Bold) ;
    
    // Het plaatje in memory laden
    System.Drawing.Image img = System.Drawing.Image.FromFile("D:\\inetpub\\wwwroot\\****.gif");
    
    // Het plaatje anders benaderen zodat orignineel niet wordt overschreven
    Bitmap bmp = new Bitmap(img);
        
    // Het Graphics object aanroepen om plaatje te bewerken
    Graphics g = Graphics.FromImage(bmp);
    
    
    /////////////////////////////// TEKST PLAATSING ////////////////////////////////
    //                                                                                                  //
    // De tekst moet mooi strak op het plaatje komen                                        //
    g.SmoothingMode = SmoothingMode.AntiAlias;                                          //
    g.TextRenderingHint = TextRenderingHint.AntiAlias;                                  //
    //                                                                                                  //
    // Brush color aanmaken met transparantie                                                   //
    SolidBrush semiTransBrush = new SolidBrush(Color.FromArgb(255, 255, 255, 255));//
    //                                                                                                  //
    // De daadwerkelijke plaatsing van de tekst met kleur en locatie                    //
    g.DrawString(newtext, textFont, semiTransBrush, new Point(10, 10));             //
    //                                                                                                  //
    ////////////////////////////////////////////////////////////////////////////////

    // Draw image to screen.
    g.DrawImage(bmp,new Rectangle(-175, 300, bmp.Width+100, bmp.Height+25), 0, 0, bmp.Width, bmp.Height, GraphicsUnit.Pixel);
        
    // Hem als plaatje naar de client sturen
    Response.ContentType = "image/jpeg";
    bmp.Save(Response.OutputStream, ImageFormat.Jpeg);
    
    // Object weer leegmaken
    bmp.Dispose();
    // bitmap.Dispose();
}

public string CreateRandomCode(int codeCount)
    {
        string allChar = "0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z";
        string[] allCharArray = allChar.Split(',');
        string randomCode = "";
        int temp = -1;

        Random rand = new Random();
        for (int i = 0; i < codeCount; i++)
        {
            if (temp != -1)
            {
                rand = new Random(i * temp * ((int)DateTime.Now.Ticks));
            }
            int t = rand.Next(36);
            if (temp != -1 && temp == t)
            {
                return CreateRandomCode(codeCount);
            }
            temp = t;
            randomCode += allCharArray[t];
        }
        return randomCode;
    }
 
</script>

  • whoami
  • Registratie: December 2000
  • Laatst online: 20:35
Waarom krijg je undefined denk je ?
Javascript == clientside
Sessie-variablen == serverside.

Het is trouwens helemaal niet nodig hier om je volledige code te plaatsen, want die is toch niet relevant. Als je code post, gelieve die dan trouwens tussen code-tags te zetten.

https://fgheysels.github.io/


  • gorgi_19
  • Registratie: Mei 2002
  • Laatst online: 14-02 12:34

gorgi_19

Kruimeltjes zijn weer op :9

En weet je zeker dat je JScript bedoeld en geen Javascript, of J#?

Digitaal onderwijsmateriaal, leermateriaal voor hbo


Verwijderd

Topicstarter
Ik bedoel echt JScript, dus niet javascript en niet J#

Kicken doen we neit binnen 24 uur. Die kick heb ik dan ook verwijderd. Dit is ook in de faq terug te lezen. Daarnaast is het leesbaarder om [code] tags om code heen te zetten, en geen quote tags.

[ Voor 66% gewijzigd door Janoz op 11-09-2006 22:08 ]


Verwijderd

Topicstarter
Schopje?? Iemand??

  • Flard
  • Registratie: Februari 2001
  • Laatst online: 14-02 10:05
offtopic:
Niet dat er nu al 24 uur voorbij zijn...


Maar je hebt het in je post over JScript en sessievariabelen...
In de code die je post zie ik alleen maar C#, en het enige wat daar met Session te maken heeft staat op regel 23 en 24... daar lees je dus in C# iets uit een sessie-variabele.

Hoe moeten wij nu (zonder glazen bol) weten wat er mis gaat?
Ik denk dat je dan júist JScript code moet laten zien...

Ik heb wel een idee, maar ik denk dat je je daarvoor eerst eens moet verdiepen in hoe Sessies werken. (serverside en clientside).

  • giMoz
  • Registratie: Augustus 2002
  • Laatst online: 21-01 09:10

giMoz

iets met meester...

je gaat van asp.net naar classic asp hebben die wel dezelfde application settings?

* giMoz bedenkt zich nu dat ie ook nog zo'n testcase heeft liggen, en weet niet of sessiehandling tussen .net en classic wel goed gaat....

weet iemand daar iets over?

Of niet natuurlijk...


  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
giMoz schreef op dinsdag 12 september 2006 @ 12:08:
je gaat van asp.net naar classic asp hebben die wel dezelfde application settings?

* giMoz bedenkt zich nu dat ie ook nog zo'n testcase heeft liggen, en weet niet of sessiehandling tussen .net en classic wel goed gaat....

weet iemand daar iets over?
Nee je kan geen ASP.NET en ASP sessies delen. Deze gebruiken een andere session scope en ASP.NET_SessionId != ASPSESSIONID.
Natuurlijk kun je hier mee cookies wel om heen gaan werken. Maar waar lees jij dat ASP.NET en classic ASP hier gemixed worden ?

It’s nice to be important but it’s more important to be nice


  • giMoz
  • Registratie: Augustus 2002
  • Laatst online: 21-01 09:10

giMoz

iets met meester...

van C# naar JScript C# is een .net taal, Jscript is een classic taal
Er is een groot verschil tussen JScript en javascript

Of niet natuurlijk...


  • pjonk
  • Registratie: November 2000
  • Laatst online: 29-12-2025
giMoz schreef op dinsdag 12 september 2006 @ 13:16:
van C# naar JScript C# is een .net taal, Jscript is een classic taal
Er is een groot verschil tussen JScript en javascript
Oke daar had ik overheen gelezen JScript is idd classic ASP, want voor .NET heb je J#.

It’s nice to be important but it’s more important to be nice

Pagina: 1