TOPIC:

Datenbank | Mehrere Abfragen 7 months 2 weeks ago #242323

  • Topic Author
  • 1987Jan
  • Offline
  • Senior Breezer
  • Senior Breezer
  • Posts: 118
  • Thanks: 0
Guten Abend,

meine Support-Anfrage besteht aus 3 Fragen. Es geht hauptsächlich um die Datenbank-Abfrage.

Vorab = Ich habe mich beim Support an dieses Thema gehalten Support - Selectliste aus der Datenbank befüllen .

Diese EINE Abfrage funktioniert SUPER.

Nun die Fragen
  1. Was und wo trage ich ein, wenn ich eine externe Datenbank anfragen möchte?
  2. Wie verwende ich den Support-Code, wenn ich mehrere Anfragen habe?
  3. Ist es möglich, wenn ich auf Seite 1 eine Kreis / Ortsangabe habe, dass ich eine bestimmte Selectliste auf Seite 7 anzeigen lasse?

Ich entwickel eine Übungsdatenbank für die Feuerwehr, Polizei, DRK, JUH, ASB, MHD, THW, DLRG (etc.)

Und in einer Datenbank würde ich gerne für jeden Kreis in jeden Bundesland alle Feuerwehren, alle Polizeistationen, alle DRK-Einheiten (etc.) als Selectlist oder Checkbox-Gruppe erscheinen lassen, damit man auswählen kann, welche externen Einheiten an der Übung teilnehmen können.

Ich hoffe das ganze ist etwas verständlich geschrieben/gefragt.

Gruß
Jan

Please Log in or Create an account to join the conversation.

Datenbank | Mehrere Abfragen 7 months 2 weeks ago #242325

  • TheMuffinMan's Avatar
  • TheMuffinMan
  • Offline
  • Developer
  • Developer
  • Posts: 10064
  • Karma: 167
  • Thanks: 807
Hi,

für "fremde" Datenbanken, ersetze einfach die Zeile aus dem Beispiel
$db = JFactory::getDBO();//Get Database Object

mit
$option = array(); //prevent problems

$option['driver']   = 'mysqli';            // Database driver name
$option['host']     = 'db.myhost.com';    // Database host name
$option['user']     = 'fredbloggs';       // User for database authentication
$option['password'] = 's9(39s£h[%dkFd';   // Password for database authentication
$option['database'] = 'bigdatabase';      // Database name
$option['prefix']   = 'abc_';             // Database prefix (may be empty)

$db = JDatabaseDriver::getInstance( $option );

Und trage die Verbindungsdaten entsprechend ein.

Wegen mehrerer Anfragen:

Du wiederholst eigentlich dann immer nur das Selbe.
D.h. die Queries aber auch die Abfrage nach dem Feld:
$this->execPieceByName('ff_InitLib'); //Include BreezingForms Library
$db = JFactory::getDBO();//Get Database Object
  
//Create your own query here
$db->setQuery('Select username From #__users '); 
  
$result = $db->loadColumn(); //load the result from the query
$test = "";
for ($i = 0; $i < count($result); $i++)
{
     $test .= "0;".$result[$i].";".$result[$i]."\n";
}

$db->setQuery('Select somefield From #__some_other_table'); 
  
$result = $db->loadColumn(); //load the result from the query
$test2 = "";
for ($i = 0; $i < count($result); $i++)
{
     $test2 .= "0;".$result[$i].";".$result[$i]."\n";
}
 
ff_setSelectList('select1', $test);
ff_setSelectList('select2', $test2);

function ff_setSelectList($name, $value)
{
     global $ff_processor;
     for ($r = 0; $r < $ff_processor->rowcount; $r++)
     {
          $row =& $ff_processor->rows[$r];
          if ($row->name==$name)
          $row->data2 = $value;
          unset($row);
     } // for
} // ff_setSelectList

Damit hättest Du quasi 2 Dropdowns befüllt.

Wegen Element auf Seite 7:

Hört sich so an als ob Du Visibility Rules brauchst.
Damit kannst Du Felder (und Sections) aus- und anschalten je nachdem welche Werte bestimmte Felder haben:

crosstec.org/en/support/online-documenta...f-conditionally.html

Sag' mir bitte bescheid, ob das so passt!

Gruss,
Markus
The following user(s) said Thank You: 1987Jan

Please Log in or Create an account to join the conversation.

Last edit: Post by TheMuffinMan.

Datenbank | Mehrere Abfragen 7 months 2 weeks ago #242329

  • Topic Author
  • 1987Jan
  • Offline
  • Senior Breezer
  • Senior Breezer
  • Posts: 118
  • Thanks: 0
Guten Morgen :)

Vielen Dank für deine Antwort.

Zum ersten Thema
Thema 1 ist - ich denke mal erledigt - . Zumindest bekomme ich keine Meldung dass keine Datenbank gefunden wurde :D

Zum zweiten Thema.
Ich habe den Code eingefügt und erhalte folgende Meldung auf der Index.php Seite
Parse error: syntax error, unexpected ':' in /www/htdocs/w013493f/uebung.bereitschaft-eckernfoerde.de/components/com_breezingforms/facileforms.process.php(1240) : eval()'d code on line 10

Habe natürlich nachgeschaut was in Zeile 10 ist = Diese ist leer. Ich kopiere mal Zeile 1 bis 16
(1) <?php
(2) /**
(3)  * BreezingForms - A Joomla Forms Application
(4)  * @version 1.8
(5)  * @package BreezingForms
(6)  * @copyright (C) 2008-2012 by Markus Bopp
(7)  * @license Released under the terms o,f the GNU General Public License
(8)  * */
(9)  defined('_JEXEC') or die('Direct Access to this location is not allowed.');
(10) 
(11) jimport('joomla.filesystem.file');
(12) jimport('joomla.filesystem.folder');
(13) 
(14) class bfMobile {
(15)     public $isMobile = false;
(16) }

Könnte es daran legen, dass du
$db = JDatabaseDriver::getInstance( $option );

mit 2fachen Doppelpunkt geschrieben hast und ich eins entfernt habe, weil ich bei :: eine Fehlermeldung erhalte beim Laden der Webseite ( 0 - Could not connect to MySQL server. )

Aber ich habe die richtigen Daten eingegeben.
  • Driver = mysqli
  • Host = bereitschaft-eckernfoerde.de
  • User = 032xxxx
  • Passwort = xx
  • Host = 032xxxx
  • Prefix = habe ich keinen

Please Log in or Create an account to join the conversation.

Datenbank | Mehrere Abfragen 7 months 2 weeks ago #242340

  • TheMuffinMan's Avatar
  • TheMuffinMan
  • Offline
  • Developer
  • Developer
  • Posts: 10064
  • Karma: 167
  • Thanks: 807
Hi,

der Fehler ist in Deinem PHP-Piece, PHP zeigt da nur die Stelle an wo der Code ausgeführt wurde.

Kannst Du stattdessen bitte Deinen Code posten? Danke!

Gruss,
Markus

Please Log in or Create an account to join the conversation.

Datenbank | Mehrere Abfragen 7 months 2 weeks ago #242385

  • Topic Author
  • 1987Jan
  • Offline
  • Senior Breezer
  • Senior Breezer
  • Posts: 118
  • Thanks: 0
$this->execPieceByName('ff_InitLib');
$option = array(); //prevent problems

$option['driver']   = 'mysql';
$option['host']     = 'bereitschaft-eckernfoerde.de';
$option['user']     = '0329a28';
$option['password'] = '.....................';
$option['database'] = '0329a28';
$option['prefix']   = '';

$db = JDatabaseDriver::getInstance( $option );

//Create your own query here
$db->setQuery('Select name From ff_sh_oh_amtlensahn'); 
  
$result = $db->loadColumn(); //load the result from the query
$test = "";
for ($i = 0; $i < count($result); $i++)
{
     $test .= "0;".$result[$i].";".$result[$i]."\n";
}

$db->setQuery('Select name From polshostholstein'); 
  
$result = $db->loadColumn(); //load the result from the query
$test2 = "";
for ($i = 0; $i < count($result); $i++)
{
     $test2 .= "0;".$result[$i].";".$result[$i]."\n";
}
 
ff_setSelectList('ffwahl', $test);
ff_setSelectList('polwahl', $test2);

function ff_setSelectList($name, $value)
{
     global $ff_processor;
     for ($r = 0; $r < $ff_processor->rowcount; $r++)
     {
          $row =& $ff_processor->rows[$r];
          if ($row->name==$name)
          $row->data2 = $value;
          unset($row);
     } // for
} // ff_setSelectList

Please Log in or Create an account to join the conversation.

Datenbank | Mehrere Abfragen 7 months 2 weeks ago #242398

  • TheMuffinMan's Avatar
  • TheMuffinMan
  • Offline
  • Developer
  • Developer
  • Posts: 10064
  • Karma: 167
  • Thanks: 807
Sieht soweit ok aus, sehe aber Du hast das Passwort rausgenommen und das liegt "nah" an der fehlerhaften Zeile 10.

Kannst Du bitte nochmal probieren? Kann sein, dass da ein abschliessendes quote gefehlt hat nur.

Du kannst auch "spasseshalber" den Code so einbauen wie Du ihn hier gepostet hast, da schlimmste was dann als Fehler käme wäre "Cannot connect to mysql".
Wenn das kommt, dann weiss man wenigstens dass der Syntax-Fehler weg ist und Du kannst wieder Dein Passwort einfügen.

Gruss,
Markus

Please Log in or Create an account to join the conversation.

Moderators: ForumSupport
Time to create page: 0.053 seconds

BreezingForms Pro 1.4.7 for WordPress Released!

Available in the membership section.

September Discount!

Massive discounts on all subscriptions!

Get Your Subscription Here

Quick Links

Downloads

BreezingForms

ContentBuilder

BreezingCommerce

Templates

Documentation

BreezingForms

ContentBuilder

BreezingCommerce

Apprendre BreezingForms (French Community)

Apprendre et maîtriser BreezingForms par des tutoriels et exemples, le tout en français

breezingforms.eddy-vh.com

Questions et réponses sur les forums de l'AFUJ

AFUJ

Special Offer

Summer Sale! All subscriptions at a special price!

Includes prio support, all of our current and future Joomla!® extensions and Joomla!® templates for the duration of your membership.

Get it from here

3rd Party Discount - 25% Off

We help you to keep your costs under control. If you are a new member and purchased a form building tool from a different form vendor, then you'll get a 25% discount on our subscription plans.

How to receive the discount:

Send us a quick email to sales@crosstec.org with a proof of purchase (for example a paypal receipt), await payment instructions and enjoy your membership!