Solved

dbase_replace_record() problems

Posted on 2001-07-06
10
253 Views
Last Modified: 2012-06-21
I'm working on a big project at the mo and it has to integrated with some windows software that uses .dbf's, so I have no choice but to use dbase (so don't give me a lecture on how much dbase sucks, hehe :o).
Unfortunately I can't get dbase_replace_record() to work properly, any help would be hugely appreciated.

I'm using the function basically like this:

$newvalues=array($shift,$shiftname,$start,$finish,$duration,$rate_norm,$rate_ot,$rate_min,$rate_night);
dbase_replace_record($db,$newvalues,$shift);

The database is open and everything is as it should be, I've tried dbase_add_record() in it's place and it works absolutely fine. I've made sure all the data types are correct (though if dbase_add_record() is anything to go by it doesn't really mind about that), I'm passing it the right number of fields (it gives an error otherwise anyway), and I've made certain that the variables being added to the array have values and that they are all present and correct in the array after the array has been created. I've even tried it by hardcoding the values rather than passing variables everywhere, just to make sure, but it makes no difference.

Basically I can't see anything wrong at all, except the result after running this is that all the fields in the record I replaced are NULL :o(

Any ideas?
0
Comment
Question by:REMarlow
  • 6
  • 4
10 Comments
 
LVL 15

Expert Comment

by:a.marsh
ID: 6259220
What version of PHP are you using?

Ant
0
 

Author Comment

by:REMarlow
ID: 6259232
4.10
0
 
LVL 15

Expert Comment

by:a.marsh
ID: 6259233
Looking at the PHP bug database I found these:

http://www.php.net/bugs.php?id=6519

http://www.php.net/bugs.php?id=5835


You may need to use a different version of PHP.

:o)

Ant
0
 
LVL 15

Expert Comment

by:a.marsh
ID: 6259244
4.10?

There's no such version.....do you mean 4.01?

Ant
0
 

Author Comment

by:REMarlow
ID: 6259246
sorry I mean 4.05, I was just trying to get the page back to say as much and it was taking forever on this crappy connection I've got here :o)
0
Highfive Gives IT Their Time Back

Highfive is so simple that setting up every meeting room takes just minutes and every employee will be able to start or join a call from any room with ease. Never be called into a meeting just to get it started again. This is how video conferencing should work!

 

Author Comment

by:REMarlow
ID: 6259259
Damn. Thanks for that. I see they fixed the same prob with dbase_add_record(), hence my successful test with that function.
Downloading 4.06 now, I'll see if it's fixed (though I don't hold out much hope).

If the bug is still there, and they aren't gonna fix it soon, I'm completely screwed - is there likely to be an earlier version of PHP in which the function works then? (I assume it worked once upon a time)
0
 
LVL 15

Expert Comment

by:a.marsh
ID: 6259275
Another bug report:

http://www.php.net/bugs.php?id=10984

It relates to 4.05 (on Windows) and is currently still open - you may want to keep an eye on it.

It may be worth you trying 4.06 (or even the latest CVS version - but that should not be used in a live application).

http://www.php.net/downloads.php


:o)

Ant
0
 
LVL 15

Accepted Solution

by:
a.marsh earned 200 total points
ID: 6259284
I've never used anything related to dbase so I can't recommend which version to try - might be worth trying some older versions though.

:o)

Ant
0
 

Author Comment

by:REMarlow
ID: 6259314
Well, you know - couldn't really give you anything other than 'excellent' under the circumstances could I? :o)

Thanks for all your help Ant, I see that bug report is from May, so I've got my fingers crossed it's fixed for 4.06. Otherwise I'll be trying out pre 4.02 and praying everything else works too! :o)
Actually I suppose all I need is a working php_dbase.dll from somewhere, that way I wouldn't have to downgrade PHP itself.
Thanks again.

Robin
0
 
LVL 15

Expert Comment

by:a.marsh
ID: 6259326
Glad to have been some help.

Thanks for the A!

Good luck in getting it working.

:o)

Ant
0

Featured Post

Easy Project Management (No User Manual Required)

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

Join & Write a Comment

Suggested Solutions

Author Note: Since this E-E article was originally written, years ago, formal testing has come into common use in the world of PHP.  PHPUnit (http://en.wikipedia.org/wiki/PHPUnit) and similar technologies have enjoyed wide adoption, making it possib…
Things That Drive Us Nuts Have you noticed the use of the reCaptcha feature at EE and other web sites?  It wants you to read and retype something that looks like this.Insanity!  It's not EE's fault - that's just the way reCaptcha works.  But it is …
The viewer will learn how to dynamically set the form action using jQuery.
This tutorial will teach you the core code needed to finalize the addition of a watermark to your image. The viewer will use a small PHP class to learn and create a watermark.

707 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

15 Experts available now in Live!

Get 1:1 Help Now