Php (skip to next record in database)?
Is there a function in php that will skip to the next record in a database and return it to the page if the one its looping through is out of date?
Here is my senario.
I have 30 events in a database starting from January 10th 2012 through to December 20th 2012 listed by date - 2012-01-10, 2012-12-20 etc
On the websites home page I want to list the 3 'next' dates. Obviously January 10th has expired but is still listed in the database. The easiest option would be to delete the record from the data base I guess but was wondering if I can automate the process?
I can list the 3 dates starting with record one in the database with DW proprietary php code:
<?php do { ?>
<div class="event">
<?php
echo $row_rsEvents['event_date']."<br />";
echo $row_rsEvents['event_title'],"<br />";
echo $row_rsEvents['event_details'];
?>
</div><!-- end event -->
<?php } while ($row_rsEvents = mysql_fetch_assoc($rsEvents)); ?>
I can hide an expired date by comparing the date in the database with the current date
<?php
$date = date('Y-m-d');
?>
<?php do { ?>
<div class="event" <?php if($date > $row_rsEvents['event_date']) { echo " style='display: none;'"; }?>>
<?php
echo $row_rsEvents['event_date']."<br />";
echo $row_rsEvents['event_title'],"<br />";
echo $row_rsEvents['event_details'];
?>
</div><!-- end event -->
<?php } while ($row_rsEvents = mysql_fetch_assoc($rsEvents)); ?>
However that then just shows 2 dates as the code still loops through the records from the start of the database.
Any ideas or pointers?
Os
Murray *ACP* wrote:
You could also do it like this -
<?php do {
if(!$date > $row_rsEvents['event_date']) { ?>
<div class="event">
<?php
echo $row_rsEvents['event_date']."<br />";
echo $row_rsEvents['event_title'],"<br />";
echo $row_rsEvents['event_details'];
?>
</div><!-- end event -->
<?php } // end if ?>
<?php } while ($row_rsEvents = mysql_fetch_assoc($rsEvents)); ?>
When the date is not greater than the event date, the loop just falls through to the next fetch.
That just seems to kill any output. I tried a few loops within loops yesterday but could never stop the expired date from being selected for the database. First solution appears to have done the trick so I'm happy.
Similar Messages
-
How to access next record from database on to form
hi
i have written the following piece of code to retrieve data from database oon to form...
Try
rset = oDICompany.GetBusinessObject(SAPbobsCOM.BoObjectTypes.BoRecordset)
query = "Select * from [@TEST] where Code = ('" + oform.Items.Item("6").Specific.value + "') "
rset.DoQuery(query)
Catch ex As Exception
SBO_Application.MessageBox(ErrorToString)
End Try
' oform.Items.Item("6").Specific.value = rset.Fields.Item("Code").Value
oform.Items.Item("7").Specific.value = rset.Fields.Item("Name").Value
oform.Items.Item("8").Specific.value = rset.Fields.Item("U_Sal").Value
but i can see only one record on my form controls.... i have placed on more button called " Next" so that i can access next records from DB when i click on "Next" button...
Public Sub NextRecords()
Try
rset.MoveFirst()
While Not rset.EoF
' oform.Items.Item("6").Specific.value = rset.Fields.Item("Code").Value
oform.Items.Item("7").Specific.value = rset.Fields.Item("Name").Value
oform.Items.Item("8").Specific.value = rset.Fields.Item("U_Sal").Value
rset.MoveNext()
End While
rset.MoveNext()
Catch ex As Exception
SBO_Application.MessageBox(ErrorToString)
SBO_Application.MessageBox("Updated")
End Try
End sub
i'm not able to access next records...
plz provide me the solution and code for this how to handle this scenario....From your question and code sample given, I think the problem is you are seeing only the last record when pressing the next button.
In the Next button press, you are coded such a way that it will populate the last record.
Try removing the do..While.. loop and simply code like
if Not rset.EoF
rset.MoveNext()
oform.Items.Item("6").Specific.value = rset.Fields.Item("Code").Value
oform.Items.Item("7").Specific.value = rset.Fields.Item("Name").Value
oform.Items.Item("8").Specific.value = rset.Fields.Item("U_Sal").Value
end if
So when you click next, you can see the next record. Not the last record.
Anoop -
Next record button GUI & database
hello,
I have a GUI that connects to a database and in the GUI I have a file menu that has first, last, prev, next on it. I want the user to be able to select either one of these words or on the image of these that are in a tool bar. i have two classes. it is a lot of code but i just need to figure out how to get to the next record under the action performed. Thank you for your time!!!
Brian
package Assignment2;
import javax.swing.event.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.*;
import java.util.Vector;
import java.io.*;
public class GUIDatabase extends JFrame implements ListSelectionListener, ActionListener {
private String path = "c:/temp/assn2Files/";
private JButton first, last, next, prev, save;
private JTextField fn, mi, ln, t, s, y;
private String[] title = {"analyst", "executive", "programmer", "project leader "};
private JComboBox titleCombo = new JComboBox(title);
private String[] department = {"Applications", "Payroll", "Accounting", "Marketing "};
private JComboBox departmentCombo = new JComboBox(department);
private JList pd;
private String myArray[] = {""};
private DbSource source = new DbSource("empdb", true);
String action, selectedQName, selectedQDSN, selectedQString;
private Vector vc, vc2, vc3, pdNames;
private DbSource dbs = new DbSource("empdb", true);
private DbSource dbs2 = new DbSource("empdb", true);
private DbSource dbs3 = new DbSource("empdb", true);
private DbSource dbs4 = new DbSource("empdb", true);
public GUIDatabase() {
super("Employee Interface");
//set up menus
JMenuBar menuBar = new JMenuBar();
JMenu navMenu = new JMenu("Navigation");
menuBar.add(navMenu);
navMenu.add(ListeningMenuItem("First"));
navMenu.add(ListeningMenuItem("Prev"));
navMenu.add(ListeningMenuItem("Next"));
navMenu.add(ListeningMenuItem("Last"));
navMenu.add(new JSeparator());
navMenu.add(ListeningMenuItem("Update employee record"));
JMenu statsMenu = new JMenu("Statistics");
menuBar.add(statsMenu);
statsMenu.add(ListeningMenuItem("Employees per Department"));
statsMenu.add(ListeningMenuItem("Employees per Project"));
//menu goes on the root pane
setJMenuBar(menuBar);
//instantiates buttons with images instead of text
first = new JButton(new ImageIcon(path + "First.gif"));
last = new JButton(new ImageIcon(path + "Last.gif"));
next = new JButton(new ImageIcon(path + "Next.gif"));
prev = new JButton(new ImageIcon(path + "Prev.gif"));
save = new JButton(new ImageIcon(path + "save.gif"));
//tooltips for buttons
first.setToolTipText("Go to First Record");
last.setToolTipText("Go to Last Record");
next.setToolTipText("Go to Next Record");
prev.setToolTipText("Go to Prev Record");
save.setToolTipText("Save File");
//register frame to listen for buttons' action events
first.addActionListener(this);
last.addActionListener(this);
next.addActionListener(this);
prev.addActionListener(this);
save.addActionListener(this);
//set up toolbar and add componenets to it
JToolBar myToolBar = new JToolBar();
myToolBar.add(first);
myToolBar.add(prev);
myToolBar.add(next);
myToolBar.add(last);
myToolBar.add(save);
add(myToolBar, BorderLayout.NORTH);
//text fields
JTextField fn = new JTextField(30);
JTextField mi = new JTextField(30);
JTextField ln = new JTextField(30);
JTextField t = new JTextField(30);
JTextField s = new JTextField(30);
JTextField y = new JTextField(30);
y.setEditable(false);
//create the pd Jlist
pdNames = new Vector();
JList pd = new JList(pdNames);
LabelComponent pdText = new LabelComponent("Project Description", pd);
pd.addListSelectionListener(this);
// pd = new JList(myArray);
pd.setFixedCellHeight(20);
pd.setFixedCellWidth(90);
// pd.addListSelectionListener(this);
//labels
LabelComponent fnText = new LabelComponent("First Name", fn);
LabelComponent miText = new LabelComponent("MI", mi);
LabelComponent lnText = new LabelComponent("Last Name", ln);
LabelComponent tCombo = new LabelComponent("Title", titleCombo);
LabelComponent tText = new LabelComponent("Telephone", t);
LabelComponent sText = new LabelComponent("Salary", s);
LabelComponent dCombo = new LabelComponent("Department", departmentCombo);
LabelComponent yText = new LabelComponent("Years in Service", y);
// LabelComponent pdText = new LabelComponent("Project Description", pd);
JPanel p1 = new JPanel();
p1.setLayout(new GridLayout(9, 2, 1, 15));
p1.add(fnText);
p1.add(miText);
p1.add(lnText);
p1.add(tCombo);
p1.add(tText);
p1.add(sText);
p1.add(dCombo);
p1.add(yText);
pdText.add(pd);
// pdText.setEditable(false);
//set layout for frame
setLayout(new BorderLayout());
add(p1, BorderLayout.EAST);
add(myToolBar, BorderLayout.NORTH);
add(pdText, BorderLayout.SOUTH);
//set up the frame properties
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(470, 550);
setLocationRelativeTo(null);
setVisible(true);
if (dbs2.isConnected()) {
boolean two = dbs2.processQuery("select e.FirstName, e.middlename, e.lastname, e.title, e.workphone, format(e.salary, 'currency'), d.departmentname, e.yearsinservice from employees e, departments d", false);
if (two) {
vc = new Vector();
while (dbs2.nextRecord()) {
vc.addElement(dbs2.getField(4));
titleCombo = new JComboBox(vc);
if (dbs3.isConnected()) {
boolean three = dbs3.processQuery("select distinct(departmentname) from departments", false);
if (three) {
vc2 = new Vector();
while (dbs3.nextRecord()) {
vc2.addElement(dbs3.getField(1));
departmentCombo = new JComboBox(vc2);
if (dbs4.isConnected()) {
boolean four = dbs4.processQuery("select projectdescription from projects", false);
if (four) {
vc3 = new Vector();
while (dbs4.nextRecord()) {
vc3.addElement(dbs4.getField(1));
pd.setListData(vc3);
if (dbs.isConnected()) {
boolean one = dbs.processQuery("select * from employees, departments", false);
if (one) {
while (dbs.nextRecord()) {
fn.setText(dbs.getField(2));
mi.setText(dbs.getField(3));
ln.setText(dbs.getField(4));
titleCombo.setSelectedItem(dbs.getField(5));
t.setText(dbs.getField(6));
s.setText(dbs.getField(7));
departmentCombo.setSelectedItem(dbs.getField(9));
y.setText(dbs.getField(8));
//project descriptions method
/* public Vector getProjectDescription() {
String pdSQL = "Select projectDescription from projects;";
source.processQuery(pdSQL, true);
//create new vector for list of project descriptions
pdNames = new Vector();
while (source.nextRecord()) {
pdNames.addElement(source.getField(3));
return pdNames;
JMenuItem ListeningMenuItem(String label) {
JMenuItem mi = new JMenuItem(label);
mi.setActionCommand(label);
mi.addActionListener(this);
return mi;
public void valueChanged(ListSelectionEvent e) {
throw new UnsupportedOperationException("Not supported yet.");
/*public void valueChanged(ListSelectionEvent e) {
//set text boxes, state combo box
String infoSQL = "select * from employees";
if (source.processQuery(infoSQL, false)) {
while (source.nextRecord()) {
fn.setText(source.getField(1));
mi.setText(source.getField(2));
ln.setText(source.getField(3));
t.setText(source.getField(4));
// s.setSelectedItem(source.getField(5));
y.setText(source.getField(6));
// pd.setText(source.getField(7));
throw new UnsupportedOperationException("Not supported yet.");
// class for a labeled component*/
class LabelComponent extends JPanel {
JLabel l;
public LabelComponent(String s, Component c) {
setLayout(new BorderLayout());
l = new JLabel(s);
l.setHorizontalAlignment(SwingConstants.CENTER);
add(l, BorderLayout.WEST);
add(c, BorderLayout.EAST);
public void actionPerformed(ActionEvent e) {
//get command
// String command = e.getActionCommand();
// action = e.getActionCommand();
try {
if (e.getSource() == first){
// new dialog(this);
source.firstRecord();
/*if (command.equals("Save")) {
String updateSQL = "UPDATE Employees"
+ " SET first_name = '" + fn.getText() + "',"
+ " middle_name = '" + mi.getText() + "',"
+ " last_name = '" + ln.getText() + "',"
+ " title = '" + titleCombo.getSelectedItem().toString() + "',"
+ " work_phone = '" + t.getText() + "'"
+ " salary = '" + s.getText() + "'"
+ " department = '" + departmentCombo.getSelectedItem().toString() + "'"
+ " yearsinservice = '" + y.getText() + "'";
// + " projectdescription = '" + pd.getSelectedItem().toString() + "'"
// + " WHERE Customer_ID = " + IDText.getText();
/* source.processUpdate(updateSQL);
pd.setListData(getProjectDescription());
} catch (Exception a) {
System.out.println(a.toString());
throw new UnsupportedOperationException("Not supported yet.");
public static void main(String args[]) {
DbSource dbs = new DbSource("empdb", true);
if (!dbs.isConnected()) {
System.out.println("Connection Error: " + dbs.getErrorMessage());
System.exit(1);
GUIDatabase m = new GUIDatabase();
m.setVisible(true);
m.setLocationRelativeTo(null);
m.setDefaultCloseOperation(EXIT_ON_CLOSE);
PHP Code:
package Assignment2;
import java.sql.*;
public class DbSource {
public ResultSet rs;
public ResultSetMetaData rsmd;
public String error;
public Connection con;
public DbSource(String b, boolean a) {
try {
String dataSource;
// connect to ODBC database
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
//Evaluate connection type
if (a) {
dataSource = "jdbc:odbc:" + b;
} else {
dataSource = "jdbc:odbc:Driver={Microsoft Access Driver (*.mdb, *.accdb)};DBQ=" + b;
//get connection
con = DriverManager.getConnection(dataSource, null, null);
} catch (Exception e) {
error = e.toString();
public boolean isConnected() {
//test for connection validity
boolean x;
try {
if (con == null || con.isClosed()) {
x = false;
} else {
x = true;
return x;
} catch (SQLException e) {
error = e.toString();
return false;
public boolean processQuery(String sqlSelect, boolean s) {
//process sql statement passed along with whether to allow bidirectional scrolling
try {
Statement stmt;
if (s) {
stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_UPDATABLE);
}else{
stmt = con.createStatement();
//Formulate ResultSet
rs = stmt.executeQuery(sqlSelect);
//ResultSet MetaData
rsmd = rs.getMetaData();
catch (SQLException e) {
error = (e.toString());
rs = null;
return false;
return true;
public int processUpdate(String sqlStatement) {
// process Update
try {
int nbr = 0;
Statement stmt = con.createStatement();
nbr = stmt.executeUpdate(sqlStatement);
return nbr;
} catch (SQLException e) {
error = e.toString();
return -1;
public boolean nextRecord() {
//proceed to next record
try {
if (rs.next()) {
return true;
} else {
return false;
} catch (SQLException e) {
error = e.toString();
return false;
public boolean prevRecord() {
//move cursor back one record
boolean a = false;
try {
if (rs.previous()) {
a = true;
return a;
} catch (SQLException e) {
error = e.toString();
System.out.println("Start of File");
return false;
public boolean firstRecord() {
// move cursor to first record
try {
rs.first();
return true;
} catch (SQLException e) {
error = e.toString();
System.out.println("End of File");
return false;
public boolean lastRecord() {
//move cursor to last record in result set
try {
rs.last();
return true;
} catch (SQLException e) {
error = e.toString();
System.out.println("End of File");
return false;
public String getField(int x) {
//get field from result set
try {
String a = rs.getString(x);
return a;
} catch (Exception e) {
error = (e.toString());
return null;
public String getFieldName(int x) {
//get field name in result set
try {
String a = rsmd.getColumnName(x);
return a;
} catch (SQLException e) {
error = e.toString();
return null;
public String getFieldType(int x) {
//get field type from meta data in result set
try {
String a = rsmd.getColumnTypeName(x);
return a;
} catch (SQLException e) {
error = e.toString();
return null;
public int getFieldCount() {
//get count of columns from metadata result set
try {
int a = rsmd.getColumnCount();
return a;
} catch (SQLException e) {
System.out.println(e.toString());
return -1;
public void close() {
//close connection
try {
con.close();
} catch (SQLException e) {
public String getErrorMessage() {
return error;
public String[] getTables() {
//get table metadata info
try {
DatabaseMetaData dbmd = con.getMetaData();
String[] tables = {"TABLE"};
rs = dbmd.getTables(null, null, null, tables);
int nbrRows = 0;
while (rs.next()) {
nbrRows++;
String[] tblNames = new String[nbrRows];
rs = dbmd.getTables(null, null, "%", tables);
nbrRows = 0;
while (rs.next()) {
tblNames[nbrRows] = rs.getString(3);
nbrRows++;
return tblNames;
} catch (Exception e) {
error = e.toString();
return null;
public String resultSetToXML() {
//turn result set to XML formatting
String rsToXML = "";
try {
rsmd = rs.getMetaData();
// begin to write XML document
rsToXML += ("<?xml version="1.0\"?>\r\n");
// Root node
rsToXML += ("<ResultSet>");
// get metadata into XML document
rsToXML += (" <MetaData>");
for (int i = 1; i <= getFieldCount(); i++) {
rsToXML += (" <Column>" + getFieldName(i) + "</Column>");
rsToXML += (" </MetaData>");
// get data into XML document
rsToXML += (" <Data>");
while (rs.next()) {
rsToXML += (" <Row>");
for (int i = 1; i <= getFieldCount(); i++) {
rsToXML += (" <" + getFieldName(i) + ">"
+ rs.getString(i)
+ "</" + getFieldName(i) + ">");
rsToXML += (" </Row>");
rsToXML += (" </Data>");
rsToXML += ("</ResultSet>");
} catch (Exception e) {
error = e.toString();
return rsToXML;
}805487 wrote:
it is a lot of code but i just need to figure out how to get to the next record under the action performed. Thank you for your time!!!It's too much code and it's unformatted. Put tags on both sides of the code (check that it works with the preview button), then ask an exact question (none of those "I don't know what to do" ones). -
How to move to next record in PHP+ORACLE env
I install php3 +ORACLE in RH linux 6 box, the works fine.
I write a app to browse record in oracle table,I write two
frame, one top_frame,one body_frame,but How can I to move to
next record?
thanks any idea!!
nullone record item at a time...
-
Auto skip to the next record in a multi-record defined text item
I know that by setting the autoskip property to true, this
allows the cursor to navigate to the next item defined in a
block without having to press return, tab or click w/a mouse
into the next item. What I would like to do is emulate that
behavior using a single multiple record text in a block. In
other words, I want the form to navigate to the next record for
that item automatically, without having to hit the down-arrow
key or mouse-click to the next record or whatever.
Anyone know if that's possible?hi
you can try in this way. you can set block property 'navigation
style' to 'change record'. -
T-SQL: Cursor is not advancing to next record
SQL Version: 2008 R2
Problem: I have the code below which uses a cursor. The cursor keeps returning the first record and does not advance to the next record in the cursor. It appears as if the Fetch Next is not being recognized. The Select
Statement in the cursor declaration returns two records which is the result set I expect to be contained in the cursor record set.
...bob sutor
SQL CODE:
DECLARE
@ProcessGroupID nchar(4)
, @RemoveAuditUser nchar(128)
DECLARE CertGroupCursor CURSOR FOR
SELECT DISTINCT CertGroups.GroupCode, CertGroups.RemoveAuditUser
--, UserControl.ProcessGroupID, UserControl.VPUserName
FROM udCertGroups AS CertGroups
LEFT JOIN udAuditUsers AS UserControl
ON CertGroups.GroupCode = UserControl.ProcessGroupID
WHERE CertGroups.GroupCode = UserControl.ProcessGroupID
AND CertGroups.RemoveAuditUser = UserControl.VPUserName
OPEN CertGroupCursor
FETCH NEXT FROM CertGroupCursor INTO @ProcessGroupID, @RemoveAuditUser
WHILE @@FETCH_STATUS = 0
Print @ProcessGroupID + '-' + @RemoveAuditUser
DELETE FROM udAuditUsers
WHERE ProcessGroupID = @ProcessGroupID
AND VPUserName = @RemoveAuditUser
FETCH NEXT FROM CertGroupCursor INTO @ProcessGroupID, @RemoveAuditUser
CLOSE CertGroupCursor
DEALLOCATE CertGroupCursor
Bob SutorThe real question is how to get rid of this mess. Think about the local “@remove_audit_user” as a variable; it's name is a verb, not a noun! and the NVARCHAR(n) lets you use Chinese Unicode. Why? In ISO-11179 rules , “remove_” is a called a role, and the
audit user would be the attribute with the attribute property “_user” in a valid data model. Where is the table that models “audit_users”? It has to be here by definition.
One of the first rules of data modeling is that a data element has one and only one name. This is a results of the Law of Identity in Logic (A is A: to be is to be something in particular, to be nothing in particular or many things in general is to be nothing
at all).
So how did “G.remove_audit_user = U.vp_user_name” occur?? ANSWER: lack of a design!
Your “G.group_code = U.process_group_id” is wrong. An identifier is not a code! TOTALLY DIFFERENT type of data elements! Do you have a postal code or a postal id? Blood_type or blood_id? Etc.? Have you ever read a book on basic data modeling?
The purpose of PRINT is debugging and not output. We had joke in the ANSI X3H2 Committee that SQL means “scarcely Qualified as a Language” because there is no I/O. PRINT will screw up performance in so many ways.
In a properly designed schema, we seldom use SELECT DISTINCT; we have keys and a valid schema that does not produce redundant duplicate rows. It might be valid, but after 30+ years of SQL, I would bet against it.
Your statement would use an EXISTS() predicate to handle multiple columns and conditions. But you did not bother with DDL, as required by basic Netiquette, so here is the skeleton I can give you.
DELETE FROM UD_Audit_Users
WHERE EXIST
(SELECT *
FROM UD_Cert_Groups AS G
WHERE G.process_group_id = ??
AND G.vp_user_name = ??;
--CELKO-- Books in Celko Series for Morgan-Kaufmann Publishing: Analytics and OLAP in SQL / Data and Databases: Concepts in Practice Data / Measurements and Standards in SQL SQL for Smarties / SQL Programming Style / SQL Puzzles and Answers / Thinking
in Sets / Trees and Hierarchies in SQL -
Entity Framework doesn't save new record into database
Hy,
I have problem with saving new record into database using Entity Framework.
When I run program, everything seems normal, without errors . Program shows existing, manually added records into the database, and new one too. But new one isn't save into database after running program.
I've got no idea where's problem. There is code for add new record, show existing.
Thanks for help!!
// add new record
using (var db=new DatabaseEntitiesContext())
var person = new Table()
First_Name = "New_FName",
Second_Name = "New_SName",
PIN = "4569"
db.Tables.Add(person);
db.SaveChanges();
//show all records
using (var db=new DatabaseEntitiesContext())
var selected = from x in db.Tables
select x;
foreach (var table in selected)
Console.WriteLine("{0}{1}{2}",table.First_Name,table.Second_Name,table.PIN);Hi BownieCross;
If you are using a local database file in your project the following may be the cause.
From Microsoft Documentation:
Issue:
"Every time I test my application and modify data, my changes are gone the next time I run my application."
Explanation:
The value of the Copy
to Output Directory property is Copy
if newer or Copy
always. The database in your output folder (the database that’s being modified when you test your application) is overwritten every
time that you build your project. For more information, see How
to: Manage Local Data Files in Your Project.
Fernando (MCSD)
If a post answers your question, please click "Mark As Answer" on that post and "Mark as Helpful".
NOTE: If I ask for code, please provide something that I can drop directly into a project and run (including XAML), or an actual application project. I'm trying to help a lot of people, so I don't have time to figure out weird snippets with undefined objects
and unknown namespaces. -
Previous and next records in a table
Let's say I have a table where I have
item name sequence customer number
I want to select these three fields where name = 'INSPECTION', but I'd also like to grab the record prior to this and the record after this, regardless of the name content. I need to do it for each customer number.
Is it possible for a novice like me to do?
Thank youWhat is "next record" and "previous record" for you in this context? A database table doesn't have records in any specific order. They have an arbitrary order.
If for you, the records have the sequence as an ordering information, then you could use LAG and LEAD functions. -
Move to next record in a LOOP!
I have to perform a loop on an internal table consisting of several records.
within the LOOP there is an if-endif condition followed by some code.
Now, in the else condition of the if-endif part, i have to move to the next record (i.e. next record in the internal table)...If i use "Exit",the entire loop processing is skipped, but i just want to skip the current sy-index and loop for the next record in the internal table.
Please suggest some way to do it.loop at itab.
if <condn>.
else.
continue.
endif.
endloop.
continue will process the next loop from begining i.e. after continue it will go to the loop at itab statement for next loop pass.
regards
shiba dutta -
Update and move to next record
Sorry if this is a simple question.
I have a form that links to an access database. The page
calls the fields and there is no problem.
I want to be able to have users check the database
information, and make any changes and then update and move to the
next record.
In the update button wizard it asks for a page to go to once
updated - I just need it to move forward.
Thanks for any help.Hi,
I am not clear what you said. But I assume you mean to say:
Right after comming in your if statement you want to update the record first and then you need the validation?? If this is right then you have to move the validation just after the update statement and then print a message just before "END IF".
HTH
Ghulam Mustafa Butt -
I'm using vb script. I'm making a quiz. I connect to a
database for the questions and choices.
I have a test page and a test processor page.
On the test page I display the question and 4 choices. On the
test processor page, it tallies up the score and redirects back to
the test page. I'm using Responce.Redirect("testpage.asp") to go
back to the test page.
After submitting my answer and going back to the test page I
want to go to the next record. How do I do that?Hi Gred,
I did put the query of table, but there was nothing happened on the screen. At the bottom of the screen still show record 1/1.
My query is as below :-
DECLARE
V_NO NUMBER := 0;
vdevice varchar2(30);
cursor c1 is
select device
from aic_std_cost_sell_price;
Rec1 c1%ROWTYPE;
begin
FOR rec1 IN C1 LOOP
begin
FIRST_RECORD;
WHILE V_NO = 0 LOOP
IF :SYSTEM.LAST_RECORD = 'TRUE' THEN
V_NO := 1;
EXIT;
ELSE
NULL;
END IF;
NEXT_RECORD;
END LOOP;
END;
END LOOP;
RETURN;
END;
rgds
Lim -
Trap error within loop and process next record
Hi,
I am processing each record inside a loop. Now if any exception occurs processing with a single record within loop I want to continue with the next record with proper error message in the log.
How to achieve the above scenario? Shall I create a savepoint and whenever any error occurs inside the loop I will rollback to that savepoint. Once it is done shall it process the next record automatically?
Thanks in advance for your reply.
Thanks,
MrinmoyRelational databases are about sets.
They are not about files and records
Processing records in a loop will make your code slow, and you should avoid using this strategy.
That said
Simply enclose the code in it's own begin end block.
beginn
<your code>
exception
when <your exception> then
<process the exception not reraising it>
end;
No savepoints required.
Sybrand Bakker
Senior Oracle DBA -
Refresh page with data from the Next Record in the Table through a Button
Scenario: Record of a table “prototype” is made up of 8 columns,
key_col,
text_col,
label1_col, label2_col, label3_col,
check1_col, check2_col, check3_col,
I have created the following items on a page:
a) A Display Only item that is populated through a SQL query
“SELECT text_col from prototype where rownum=key_seq.NEXTVAL “.
b) Hidden item for the database columns “label1_col, label2_col, label3_col”
Source type for the hidden items is of type SQL query, Source expression is:
Select label1_col from prototype where rownum=key_seq.NEXTVAL ;
Select label2_col from prototype where rownum=key_seq.NEXTVAL ;
Select label3_col from prototype where rownum=key_seq.NEXTVAL ;
(key_seq is a sequence).
c) Checkbox item for the database columns “ check1_col, check2_col,check3_col"
d) The labels for the above checkbox items are &label1_col. , &label2_col. , &label3_col.
I have created a Save button to save the state of the checkboxes; (STATIC:;1 )
I want the page to be refreshed with the data from the next record (Fields text_col, label1_col, label2_col, label3_col) through a “ Next” Button.
Can I please know how I can achieve this?
Thanks in advanceIf you need the value that is entered in the textbox as the email body, then try this..
<html>
<HEAD>
<title>WebForm1</title>
<script language="javascript">
function mailHTML() {
var content=document.getElementById('textBox').value;
location.href="mailto:?body="+encodeURI(content);
</script>
</head>
<body>
<form name="theform" id="theform">
<div name="body1"/>
<input type="text" value="Test" id="textBox"/>
<input type="button" value="Send Email" onClick="mailHTML()"/>
</div>
</form>
</body>
</html> -
Move to next record / wildcard search
Hi
Hope you can understand this explanation..
I have searchable database for Holiday & Residential
property here
http://www.roomtobreathesl.com
(search facility in the navigation menu)
The results page for this search works fine for when you
specify a certain
area, certain amount of beds etc as it only shows a small
amount of
properties.
However when you do a search for any area / any amount of
rooms / any type,
the query brings up over 40 results, so a move to next record
is used. This
is where the problem lies. You cannot move to next record as
the 'Next
record' link is looking for another wildcard search (see
status bar).
Any ideas how to remedy this?
Thanks for any help
Garyoops!
Sorry sent you the previous version that's online.
I also tried doing a search and replace and changing all
'Request.Form' to
'Request'
Still didn't work.
This is how it was when it wasn't working.
<%@LANGUAGE="VBSCRIPT"%>
<!--#include file="Connections/YotShop6.asp" -->
<%
Dim rsResults__MMColParam
rsResults__MMColParam = "1"
If (Request("yscon") <> "") Then
rsResults__MMColParam = Request("yscon")
End If
%>
<%
Dim rsResults__ysbed
rsResults__ysbed = "1"
If (Request("ysbed") <> "") Then
rsResults__ysbed = Request("ysbed")
End If
%>
<%
Dim rsResults__MMColParam3
rsResults__MMColParam3 = "xyz"
If (Request("type") <> "") Then
rsResults__MMColParam3 = Request("type")
End If
%>
<%
Dim rsResults
Dim rsResults_numRows
Set rsResults = Server.CreateObject("ADODB.Recordset")
rsResults.ActiveConnection = MM_YotShop6_STRING
rsResults.Source = "SELECT * FROM YotStock WHERE Area LIKE '"
+
Replace(rsResults__MMColParam, "'", "''") + "' AND bedrooms
LIKE '" +
Replace(rsResults__ysbed, "'", "''") + "' AND type LIKE '" +
Replace(rsResults__MMColParam3, "'", "''") + "' ORDER BY
price ASC"
rsResults.CursorType = 0
rsResults.CursorLocation = 2
rsResults.LockType = 1
rsResults.Open()
rsResults_numRows = 0
%>
"Julian Roberts" <[email protected]> wrote in message
news:euj4if$ici$[email protected]..
>>> Use Request instead of Request.Form for runtime
parameters.
>
> You haven't done it :)
>
> --
> Jules
>
http://www.charon.co.uk/charoncart
> Charon Cart 3
> Shopping Cart Extension for Dreamweaver MX/MX 2004
>
>
>
> -
Delete Multiple record in database block
hi to all,
i have one button. what i want if i press this button all the records that i selected from detail blocks will be deleted.
i used this code but i always received an error : FRM-40102: record must be entered or deleted first.
DECLARE
Num_Total_Records NUMBER;
Num_Loop_I NUMBER;
BEGIN
GO_BLOCK(<BLOCK_NAME>);
FIRST_RECORD;
LAST_RECORD;
Num_Total_Records := TO_NUMBER(NAME_IN('SYSTEM.CURSOR_RECORD'));
FIRST_RECORD;
FOR Num_Loop_I IN 1..Num_Total_Records LOOP
IF <CHECKBOX> = 1 THEN
if <condition> then
else
if <condition> then
else
end if
--condition is satisfied...deleted the selected record
delete_record;
commit;
end if
END IF;
NEXT_RECORD;
END LOOP;
<................................................>
END;baguhan,
by this if u have selected all records, some records will won;t delete.
because as poelger said, delete_record will already skip 1 record.
so instead of the code u gave , its beter to all else portion in the condition and in the else portion gave the next record.
this is the your code modified
DECLARE
Num_Total_Records NUMBER;
Num_Loop_I NUMBER;
BEGIN
GO_BLOCK(<BLOCK_NAME>);
FIRST_RECORD;
LAST_RECORD;
Num_Total_Records := TO_NUMBER(NAME_IN('SYSTEM.CURSOR_RECORD'));
FIRST_RECORD;
FOR Num_Loop_I IN 1..Num_Total_Records LOOP
IF <CHECKBOX> = 1 THEN
--condition is satisfied...deleted the selected record
delete_record;
commit;
else
NEXT_RECORD;
END IF;
END LOOP;
<................................................>
END;
Regards,
Manu
Maybe you are looking for
-
How to install yosemite on lion server without server application
I have osx 10.7.5 (that's all it says when I click about this app, but I know the computer was installed with lion with server app originally). I don't need nor want the server app, and am happy to remove it one way or another. Server is currently
-
Has anyone got a workaround for the iTunes 12 sorting movies bug?
I have movies in various playlists in my iTunes 12.0.1 library with various metadata and nice artwork added. When selecting sort by 'Genre', 'Sort Albums by Title' or sort by 'Albums' then 'Sort by Title' (both of these sorting options to enable brow
-
10.2.0.3 installation in solaris
Hi This is sabya. I need to install oracle 10g R2 . The os is solaris 9 (64bit SPARC). I want to know whether there is any 10.2.0.3 s/w version available or I need to install the base version(10.2.0.1) first and then apply patches on it to get 10.2.0
-
How to return to my movie's timeline
I created a movie called "ElverPark" about my nephews at the park. Later I created a movie called "Drone" about a drone test flight. I just re-opened iMovie and have: 1. Drone assets on top left 2. Drone preview on top right 3. Drone timeline (vid
-
Nokia N80 Version 4 Firmware, has 02 network appro...
Doesn anyone know if 02 has approved this firmware yet? my N80 is driving me insane with freezing and the usual faults... i see that Orange has approved it thanks also, any release date for the Nokia N91 8GB Mobile Phone?