Author Topic: vLIB db Problem  (Read 989 times)

0 Members and 1 Guest are viewing this topic.

Offline Paddy

  • Newbie
  • *
  • Posts: 8
vLIB db Problem
on: Sun, 07. December 2008 - 11:44:02
Hallo liebe Leute, ich bin neu im Umgang mit vLIB und habe mich über das deutsche Tutorial von Clausvb.de schlau gemacht.
Um es besser zu verstehen habe ich die beispiele in PHP ausgeführt.
Nun stehe ich vor folgendem Problem

Quote
Warning: Supplied argument is not a valid resource handle in C:\xampp\htdocs\test\temp\vlibTemplate.php on line 348

Warning: vlibTemplate Warning: Invalid resource type passed to vlibTemplate::setDbLoop() for Db "MYSQL". in C:\xampp\htdocs\test\temp\vlibTemplate\error.php on line 86
MySQL data in a table using TMPL_LOOP and SETDBLOOP

Index.php
Code: [Select]
<?

   require_once ../temp/vlibTemplate.php;

   $tmpl = new vlibTemplate(db_simple.htm);

   // DATABASE variables and query
   require_once db_config.php;
   mysql_connect($db_host, $db_user, $db_pw);
   mysql_select_db($db_name);
   $select = "SELECT name, city FROM $db_table";
   $result = mysql_query($select);

   $tmpl->setdbloop(table_data, $result);
   $tmpl->pparse();

   mysql_close();
   
?>

db_simple.htm
Code: [Select]
<table border="1" width="70%" summary="MySQL data in a table using TMPL_LOOP and SETDBLOOP">
   <caption>MySQL data in a table using TMPL_LOOP and SETDBLOOP</caption>
   <thead>
      <tr>
         <th align="left">name</th>
         <th align="left">city</th>
      </tr>
   </thead>
   <tbody>
    <tmpl_loop name=table_data>
      <tr>
         <td valign="top">{tmpl_var name=name}</td>
         <td valign="top">{tmpl_var name=city}</td>
      </tr>
    </tmpl_loop>
   </tbody>
</table>


db_config.php
Code: [Select]
<?
$db_host = localhost;
$db_name = test;
$db_user = root;
$db_pw = ;
    $db_table = 07;

?>


MySQL Tabelle
Code: [Select]
CREATE TABLE IF NOT EXISTS `07` (
  `name` char(10) collate latin1_general_ci NOT NULL,
  `birthday` date NOT NULL,
  `city` char(10) collate latin1_general_ci NOT NULL,
  `country` char(10) collate latin1_general_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

--
-- Daten für Tabelle `07`
--

INSERT INTO `07` (`name`, `birthday`, `city`, `country`) VALUES
(Peter, 2008-12-09, Bonn, DE),
(1Klaus, 2008-12-27, London, EN);


Ich finde den Fehler einfach nicht!
Zumal alles weitgehend per Copy & Paste gemacht wurde.
Ich hoffe Ihr könnt mir helfen...

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: vLIB db Problem
Reply #1 on: Sun, 07. December 2008 - 12:43:44
Funktioniert folgendes Beispiel?

MySQL data in a table using TMPL_LOOP and ARRAY_PUSH

Bitte testen und Rückmeldung geben, danke!

Gruß
Claus

PS: Dein Name verstößt übrigens gegen die Richtlinien. Du wirst keinen weiteren Support erhalten, bis Du einen Namen/eine Kennung hast, der den Richtlinien entspricht (siehe Registrierungs-Text).
Last Edit: Sun, 07. December 2008 - 13:01:19 by ClausVB

Offline Paddy

  • Newbie
  • *
  • Posts: 8
Re: vLIB db Problem
Reply #2 on: Sun, 07. December 2008 - 23:39:28
Der Link funtioniert!
Hier die ausgabe im Firefox.



PS: Name geändert ;)

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: vLIB db Problem
Reply #3 on: Mon, 08. December 2008 - 00:34:47
Der Link funtioniert!

Willst Du mich verar.....?

Natürlich funktioniert der Link, funktioniert das Beispiel (mit ARRAY_PUSH) bei Dir, mit Deiner Tabelle?

Gruß
Claus

Offline Paddy

  • Newbie
  • *
  • Posts: 8
Re: vLIB db Problem
Reply #4 on: Mon, 08. December 2008 - 10:54:33
Willst Du mich verar.....?

Natürlich funktioniert der Link, funktioniert das Beispiel (mit ARRAY_PUSH) bei Dir, mit Deiner Tabelle?

MOD: KEINE FULLQUOTES!

Ups... Ja es war schon spät....

Ich habe es ausprobiert und bekomme folgende fehlermeldung:

Quote
Warning: mysql_fetch_assoc(): supplied argument is not a valid MySQL result resource in C:\xampp\htdocs\test\08\index.php on line 17

Index.php
Code: [Select]
<?

require_once ../temp/vlibTemplate.php;
   require_once ../temp/vlibDate.php;

   $tmpl = new vlibTemplate(db.htm);
   $date = new vlibDate(de); // you may set this to en (english)

   // DATABASE variables and query
   require_once db_config.php;
   mysql_connect($db_host, $db_user, $db_pw);
   mysql_select_db($db_name);
   $select = "SELECT name, birthday, city FROM $db_table";
   $result = mysql_query($select);

   $table_data = array();
   while ($row = mysql_fetch_assoc($result))
   {
      array_push($table_data, array(
         name => $row[name],
         birthday => $date->formatDate($row[birthday], %A, %d.%m.%Y),
         city => $row[city]
         )
      );
   }
   $tmpl->setloop(table_data, $table_data);

   $tmpl->pparse();

   mysql_close();
   
?>

db.htm
Code: [Select]
   <table border="1" width="70%" summary="MySQL data in a table using TMPL_LOOP and ARRAY_PUSH">
      <caption>MySQL data in a table using TMPL_LOOP and ARRAY_PUSH</caption>
      <thead>
         <tr>
            <th align="left">name</th>
            <th align="left">birthday</th>
            <th align="left">city</th>
         </tr>
      </thead>
      <tbody>
       <tmpl_loop name=table_data>
         <tr>
            <td valign="top">{tmpl_var name=name}</td>
            <td valign="top">{tmpl_var name=birthday}</td>
            <td valign="top">{tmpl_var name=city}</td>
         </tr>
       </tmpl_loop>
      </tbody>
   </table>

db_config.php
Code: [Select]
<?
$db_host = localhost;
$db_name = test;
$db_user = root;
$db_pw = ;
    $db_table = 07;

?>

MySQL Tabelle
Code: [Select]
CREATE TABLE IF NOT EXISTS `07` (
  `name` char(10) collate latin1_general_ci NOT NULL,
  `birthday` date NOT NULL,
  `city` char(10) collate latin1_general_ci NOT NULL,
  `country` char(10) collate latin1_general_ci NOT NULL
) ENGINE=MyISAM DEFAULT CHARSET=latin1 COLLATE=latin1_general_ci;

--
-- Daten für Tabelle `07`
--

INSERT INTO `07` (`name`, `birthday`, `city`, `country`) VALUES
(Peter, 2008-12-09, Bonn, DE),
(Klaus, 2008-12-27, London, EN);

Ausgabe im Firefox


Hoffe ich habe das jetzt richtig verstanden..

Lieben Gruß und schon mal herzlichen dank für deine Mühe
Last Edit: Fri, 19. December 2008 - 15:19:45 by ClausVB

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: vLIB db Problem
Reply #5 on: Mon, 08. December 2008 - 12:28:45
Dann funktioniert etwas auf PHP-SQL-Ebene nicht. Bitte benenne Deine Tabelle mal in "test_vlib" um und führe dann folgende Abfrage in phpMyAdmin (oder einem anderen Client) durch:
Code: [Select]
SELECT name, birthday, city FROM test_vlib
Kommt der Fehler da auch?

Wenn nein, funktioniert es dann auch im PHP-Skript?

Gruß
Claus

Offline Paddy

  • Newbie
  • *
  • Posts: 8
Re: vLIB db Problem
Reply #6 on: Mon, 08. December 2008 - 12:42:07
Es Funktioniert!  ;D

Die SQL Abfrage sowie die Abfrage im PHP Script.

Hat das jetzt nur daran gelegen das die Tabelle "07" hieß oder woran?

Danke nochmal

lg

Offline ClausVB

  • Administrator
  • Hero Member
  • *****
  • Posts: 566
    • Homepage: clausvb.de
Re: vLIB db Problem
Reply #7 on: Mon, 08. December 2008 - 16:58:27
Hat das jetzt nur daran gelegen das die Tabelle "07" hieß oder woran?

Wahrscheinlich. Aber diese Frage müsstest Du entweder selbst recherchieren oder in einem MySQL-Forum fragen. MySQL-Fragen sind in diesem Forum Off-Topic.

Gruß
Claus

Offline Paddy

  • Newbie
  • *
  • Posts: 8
Re: vLIB db Problem
Reply #8 on: Tue, 09. December 2008 - 00:06:31
Alles klar.

Ich bedanke mich nochmal für die kompetente Hilfe.
Das Forum ist zu empfehlen!

--- Close ---

lg
Paddy