PHP, SQL script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

IoValduc

ioValduc

29/11/2007 22:02:00
Quote Anchor link
Dit werkt:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
    $snd_SQL
     .= "DECLARE @IDPOSBW INT;";
    //$snd_SQL     .= "SET @IDPOSBW=1;";
    $snd_SQL    .= "SELECT 'name';";
    $rs            =    PWEB_Func_DB_Query($snd_SQL);
    while (odbc_fetch_row($rs)){
        echo odbc_result($rs,1);
    }

?>


dit niet:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
    $snd_SQL
     .= "DECLARE @IDPOSBW INT;";
    $snd_SQL     .= "SET @IDPOSBW=1;";
    $snd_SQL    .= "SELECT 'name';";
    $rs            =    PWEB_Func_DB_Query($snd_SQL);
    while (odbc_fetch_row($rs)){
        echo odbc_result($rs,1);
    }

?>
 
PHP hulp

PHP hulp

23/12/2024 23:57:27
 
- wes  -

- wes -

29/11/2007 22:06:00
Quote Anchor link
nou, tnx for that

ik zal het bookmarken als ik ooit nog iets heb wat niet werkt en wel moet werken
 
IoValduc

ioValduc

29/11/2007 22:08:00
Quote Anchor link
:-)

Grapjas..
Ik ben inderdaad vergeten de vraag erbij te vermelden...

De vraag is natuurlijk waarom het tweede scriptje niet werkt.
 
- wes  -

- wes -

29/11/2007 22:23:00
Quote Anchor link
zo jong zo ontschuldig...

- wat wil er niet
- wat moet het doen
- wat heb je al geprobeerd
 
IoValduc

ioValduc

29/11/2007 22:28:00
Quote Anchor link
het is waar, ik ben de onschuld zelve.

Het eerste script output: name
(we zijn daar nu al blij om)

Bij het tweede script krijg ik een al een even onschuldige pagina zoals ik dat ben, zonder errors, maar in een maagdelijk witte vorm... (onschuldig, maar poedelnaakt dus)
Helaas geen: name

ps: $snd_SQL .= "SELECT 'name';"; waar de string misschien wat ongelukkig gekozen is, dus mag je dat gerust vervangen met $snd_SQL .= "SELECT 'thanx';";
 
- wes  -

- wes -

29/11/2007 22:29:00
Quote Anchor link
je bent de 1e die na 2 posts van me nog steeds positief tegen het leven aankijkt, je mag blijven :)


vraag pgFrank maar , dies wel leip van querys , vooral MySQL
 
IoValduc

ioValduc

29/11/2007 22:33:00
Quote Anchor link
MySQL is het in feite niet, maar meer een nogal exotische: win2003, sql server 2000 en php -combinatie...

Misschien is het omdat ik van exotische dingen hou, dat het leven me altijd zal toelachen, no matter what ;-)
 
Thijs X

Thijs X

29/11/2007 22:33:00
Quote Anchor link
wes schreef op 29.11.2007 22:29:


vraag pgFrank maar , dies wel leip van querys , vooral MySQL


Offtopic:

Waar zie je dat hij met MySQL werkt ? 0_o
 
IoValduc

ioValduc

29/11/2007 22:35:00
Quote Anchor link
Och ja, zo veel verschil maakt dat hier nu niet uit, denk ik.
Maar dat is een gewaagde veronderstelling, gezien ik geen expert ben, maar nu ook niet meteen een noob...
 
- wes  -

- wes -

29/11/2007 22:36:00
Quote Anchor link
ik zeg dat niet, maar IEDEREEN weet dat pgFrank leip is van MySQL

oh hij is er dol op, kan je hem atijd voor wakker PMen
 
IoValduc

ioValduc

29/11/2007 22:37:00
Quote Anchor link
Misschien moet ik magic pgFrank maar even zijn aandacht vestigen op dit forum, of zijn er hier mensen die hem makkelijker wakker krijgen?
 
Jan Koehoorn

Jan Koehoorn

29/11/2007 22:39:00
Quote Anchor link
Ik zit even te kijken naar dit:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
SET @IDPOSBW=1

dat zou betekenen dat je veldnaam met een @ begint en ik vraag me af of dat toegestaan is.
 
- wes  -

- wes -

29/11/2007 22:39:00
Quote Anchor link
hij woont in brazilie, die zit de hele dag aan de koffie achter zn laptopje, gewoon pms blijven sturen
 
Jurgen assaasas

Jurgen assaasas

29/11/2007 22:41:00
Quote Anchor link
Welke database gebruik je, en check je errorlogs misschien?
 
IoValduc

ioValduc

29/11/2007 22:54:00
Quote Anchor link
Beetje meer uitleg over de SQL:

// lokale variabele definiëren als integer
DECLARE @IDPOSBW INT;

// waarde geven aan de variabele
SET @IDPOSBW;

// een hier in feite irrelevante output vragen
SELECT 'name';

Het is een ongelofelijk elementair, doch eenvoudig script, maar bij mij doet het moeilijk en bij een andere persoon die het heeft uitgeprobeerd werkt het wel, maar hij werkt met mysql, terwijl het bij mij over SQL Server 2000 gaat over ODBC van win 2003... (exotic or not?)

In de realiteit wil ik, wat hierna volgt, een 1 doen outputten:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
<?php
    $snd_SQL
     .= "DECLARE @IDPOSBW INT;";
    $snd_SQL     .= "SET @IDPOSBW=1;";
    $snd_SQL    .= "SELECT @IDPOSBW;";
    $rs            =    PWEB_Func_DB_Query($snd_SQL);
    while (odbc_fetch_row($rs)){
        echo odbc_result($rs,1);
    }

?>


ps: de functie werkt prima
 
IoValduc

ioValduc

30/11/2007 00:55:00
Quote Anchor link
Ondertussen weet ik weer iets meer:
Als het script onder Apache draai, dan krijg ik een foutmelding, maar de fout is niet zichtbaar met win2003...

de fout is: not tuples available for this result index
 
Frank -

Frank -

30/11/2007 01:09:00
Quote Anchor link
wes schreef op 29.11.2007 22:39:
hij woont in brazilie, die zit de hele dag aan de koffie achter zn laptopje, gewoon pms blijven sturen
Yep, koffie, veel bier, bbq en een lekker snoepje bij de hand. En dat alles lekker bij het zwembad met een heerlijk zonnetje. Althans, overdag.

Maar dan het probleem: MSSQL heb ik weinig kaas van gegeten. Ik kan de stored procedures vrij aardig lezen en vertalen naar pgSQL, maar daar houdt mijn kennis wel mee op.

Helaas, het is niet anders.

Succes!
 
- wes  -

- wes -

30/11/2007 11:03:00
Quote Anchor link
Ach ja bijna je snoepje vergeten!
Hoe is het nu met Juan?
 
Niels Janssen

Niels Janssen

30/11/2007 14:27:00
Quote Anchor link
ODBC is toch een connector naar Oracle? In dat geval lijkt het me vreemd dat het @ toestaat in de naam van de variabele, dat is naar mijn weten alleen voor MySQL. Maar ik kan het natuurlijk verkeerd hebben.
Edit:

Het lijkt er op dat ik het verkeerd heb, in dat geval heb ik geen oplossing.
Gewijzigd op 01/01/1970 01:00:00 door Niels Janssen
 
Frank -

Frank -

30/11/2007 16:01:00
Quote Anchor link
@Niels: ODBC kun je voor diverse databases gebruiken, waaronder Oracle en DB2. Het zou mij niet verbazen dat je er ook MSSQL mee kunt aansturen. Desondanks zou ik voor PDO kiezen, dat is multifuctioneel (mist de juiste driver is geinstalleerd).

De @ gebruik je zeker weten in MSSQL, ik vertaal wel eens een stored procedure van MSSQL naar pgSQL en daar staan er altijd heel veel in.
 
IoValduc

ioValduc

02/12/2007 18:02:00
Quote Anchor link
Inderdaad, de '@' vormt geen probleem bij ODBC -> SQL Server.
Het declaren en setten gaat voortreffelijk, maar blijkbaar kan je na een uitgebreid script geen output meer verwachten.
Vermoedelijk is het een tekortkoming van ODBC in PHP, of misschien nog een andere onbekende reden, waar ik trouwens nog op zoek naar ben.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.