Σύνδεση ΡΗΡ σε Access βάση

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Απάντηση
Intefix
Δημοσιεύσεις: 186
Εγγραφή: 22 Σεπ 2007 16:21
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από Intefix » 24 Σεπ 2015 13:14

Από μια βάση Access .mdb που γράφουν 4-5 άτομα θέλω μια σηκώνω μια σελίδα PHP.
Έχω τη παρακάτω σελίδα

Κώδικας: Επιλογή όλων

<?php

$db_username = ''; //username
$db_password = ''; //password

//path to database file
$database_path = "C&#58;\databases\base1.mdb";

//check file exist before we proceed
if &#40;!file_exists&#40;$database_path&#41;&#41; &#123;
    die&#40;"Access database file not found !"&#41;;
&#125;

//create a new PDO object
$db = new PDO&#40;"odbc&#58;DRIVER=&#123;Microsoft Access Driver &#40;*.mdb&#41;&#125;; DBQ=$database_path; Uid=$db_username; Pwd=$db_password;"&#41;;

//Select data table
$sql  = "SELECT employee_id, lname, fname, mob_phone
        FROM ref_employee
        ORDER BY employee_id
        LIMIT 30";
$result = $db->query&#40;$sql&#41;;

while &#40;$row = $result->fetch&#40;&#41;&#41; &#123;
    echo $row&#91;"employee_id"&#93;;
    echo $row&#91;"lname"&#93;;
    echo $row&#91;"fname"&#93;;
    echo $row&#91;"mob_phone"&#93;;
&#125;
$database->close&#40;&#41;;
?>
Παίρνω το ακόλουθο σφάλμα:
Fatal error: Call to a member function fetch() on a non-object in C:\xampp\htdocs\requests\access_connect.php on line 24. Εκει στο (while ($row = $result->fetch()) {
Το έχει κάνει κανένας; Μπορέιτε να βοηθήσετε;

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6230
Εγγραφή: 30 Νοέμ 2004 03:09

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από fafos » 24 Σεπ 2015 13:44

Gia arxh vale auto kato apo thn syndesh gia na pairneis ta errors:

Κώδικας: Επιλογή όλων

$db->setAttribute&#40;PDO&#58;&#58;ATTR_ERRMODE, PDO&#58;&#58;ERRMODE_EXCEPTION&#41;;
epomeno, vale auto (apo kato) gia na oriseis oti kaneis fetch objects:

Κώδικας: Επιλογή όλων

$db->setAttribute&#40;PDO&#58;&#58;ATTR_DEFAULT_FETCH_MODE, PDO&#58;&#58;FETCH_OBJ&#41;;
An den yparxei provlhma me thn vash tha paixei allios tha sou dosei kapoio lathos sto query..
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Intefix
Δημοσιεύσεις: 186
Εγγραφή: 22 Σεπ 2007 16:21
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από Intefix » 24 Σεπ 2015 14:25

Fatal error: in line... $result = $db->query($sql);

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6230
Εγγραφή: 30 Νοέμ 2004 03:09

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από fafos » 24 Σεπ 2015 14:45

H php_pdo_odbc einai energopoihmenh sto xampp?
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Intefix
Δημοσιεύσεις: 186
Εγγραφή: 22 Σεπ 2007 16:21
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από Intefix » 24 Σεπ 2015 14:47

ασφαλώς...

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6230
Εγγραφή: 30 Νοέμ 2004 03:09

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από fafos » 24 Σεπ 2015 14:51

mporeis na steileis ena mdb me liga dedomena na to dokimaso?
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Intefix
Δημοσιεύσεις: 186
Εγγραφή: 22 Σεπ 2007 16:21
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από Intefix » 24 Σεπ 2015 15:06

ενα δειγμα..δεν καταλαβαίνω γιατι δεν το παίρνει....
Συνημμένα
base1.rar
(12.83 KiB) Μεταφορτώθηκε 117 φορές

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6230
Εγγραφή: 30 Νοέμ 2004 03:09

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από fafos » 24 Σεπ 2015 16:41

emena douleuei apsoga etsi (des prosektika tis allages pou exo kanei -dipla slashes sto link, ektyposh dedomenon klp-):

Κώδικας: Επιλογή όλων

<?php
header&#40;'Content-Type&#58; text/html; charset=utf-8'&#41;;
$db_username = ''; //username
$db_password = ''; //password

//path to database file
$database_path = "C&#58;\\databases\\base1.mdb"; 

//check file exist before we proceed
if &#40;!file_exists&#40;$database_path&#41;&#41; &#123;
    die&#40;"Access database file not found !"&#41;;
&#125;


//create a new PDO object  

$db = new PDO&#40;"odbc&#58;DRIVER=&#123;Microsoft Access Driver &#40;*.mdb&#41;&#125;;charset=UTF-8; DBQ=$database_path; Uid=$db_username; Pwd=$db_password;"&#41;;
	$db->setAttribute&#40;PDO&#58;&#58;ATTR_ERRMODE, PDO&#58;&#58;ERRMODE_EXCEPTION&#41;;
	$db->setAttribute&#40;PDO&#58;&#58;ATTR_DEFAULT_FETCH_MODE, PDO&#58;&#58;FETCH_OBJ&#41;;
   
	   

//Select data table
$sql  = "SELECT employee_id, lname, fname, mob_phone
        FROM ref_employee
        ORDER BY employee_id";
$result = $db->query&#40;$sql&#41;;

while &#40;$row = $result->fetch&#40;&#41;&#41; &#123;
    echo $row->employee_id;
    echo iconv&#40;"windows-1253", "utf-8", $row->lname&#41;;
    echo iconv&#40;"windows-1253", "utf-8", $row->fname&#41;;
    echo $row->mob_phone.'<br />';
&#125;
$database->close&#40;&#41;; // <- what is this??? des parakato pos kleineis thn syndesh me thn vash sthn pdo
$db = null;
?>
Auto pou den katafera na paro einai to LIMIT .. isos thelei prepares gia na doulepsei... psaxto
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

Intefix
Δημοσιεύσεις: 186
Εγγραφή: 22 Σεπ 2007 16:21
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από Intefix » 24 Σεπ 2015 19:26

Ευχαριστώ...
Πράγματι για να κλείσει η σύνδεση θέλει $db = null;
Για το LIMIT και γω δεν βρήκα κάτι...
Edit:
Βρήκα αυτό...

Κώδικας: Επιλογή όλων

$limit = intval&#40;$limit&#41;;
 $s = $pdo->prepare&#40;"SELECT * FROM tbl LIMIT &#123;$limit&#125;"&#41;;
Πράγματι θέλει prepare

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από dva_dev » 24 Σεπ 2015 20:58

Ρίξε μια ματιά στο http://www.w3schools.com/sql/sql_top.asp

Intefix
Δημοσιεύσεις: 186
Εγγραφή: 22 Σεπ 2007 16:21
Τοποθεσία: Ηράκλειο Κρήτης
Επικοινωνία:

Σύνδεση ΡΗΡ σε Access βάση

Δημοσίευση από Intefix » 28 Σεπ 2015 13:27

Ok με τα παραπάνω...
Ας υποθέσουμε πως θέλω να εκτυπώσω κάτι σαν (Το ερώτημα έχει τα δεδομένα...)

Διεύθυνση:1
Τμήμα:1
Υπάλληλος 1: Επίθετο+Όνομα+τηλέφωνο
Υπάλληλος 2: Επίθετο+Όνομα+τηλέφωνο
---------------------------------------------------------
Σύνολο υπαλλήλων τμήματος 1: 2
---------------------------------------------------------

Τμήμα:2
Υπάλληλος 3: Επίθετο+Όνομα+τηλέφωνο
Υπάλληλος 4: Επίθετο+Όνομα+τηλέφωνο
Υπάλληλος 5: Επίθετο+Όνομα+τηλέφωνο
---------------------------------------------------------
Σύνολο υπαλλήλων τμήματος 2: 3
---------------------------------------------------------
Σύνολο υπαλλήλων Διεύθυνσης 1: 5 .........................>

Πως θα είναι οι λούπες σε ΡΗΡ?
Ευχαριστώ

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 1 επισκέπτης