MyBB.de Forum
Php scrip erstellen wo sich leute eintragen können - Druckversion

+- MyBB.de Forum (https://www.mybb.de/forum)
+-- Forum: Anpassungen (https://www.mybb.de/forum/forum-47.html)
+--- Forum: Plugin-Diskussionen (https://www.mybb.de/forum/forum-38.html)
+--- Thema: Php scrip erstellen wo sich leute eintragen können (/thread-24385.html)

Seiten: Seiten: 1 2


RE: Php scrip erstellen wo sich leute eintragen können - King Louis - 23.12.2011

Warning [2] mysql_query() [function.mysql-query]: Can't connect to local MySQL server through socket '/tmp/mysqld.sock' (2) - Line: 10 - File: test1.php PHP 5.2.17 (Linux)

heisst das die abfrage nicht der mybb connection entspricht. beheben kannst du das entweder in dem du deinen query mysqld komform schreibst (und frag mich jetzt nicht wie Wink) oder in dem du wieder deine eigene connection aufbaust (und diese bitte auch schliesst)


RE: Php scrip erstellen wo sich leute eintragen können - unex - 23.12.2011

so ich habe es hinbekommen danke für deine hilfe SmileSmile das du dir die mühe mit gemacht hast so sieht das ganze nun aus :

PHP-Code:
<?php
$dbname
="x";
$dbhost="x";
$dbuser="x";
$dbpass="x";
mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname);

define("IN_MYBB"1);
//define("NO_ONLINE", 1); // Wenn Seite nicht in Wer ist online-Liste auftauchen soll

require("global.php");

add_breadcrumb("test1");

              
$query="SELECT id, name, teilnehmeranz FROM plng_meetup;";
             
$result=mysql_query($query);
             
$rows=mysql_num_rows($result);
             
$i=1;
             
$tausgabe "";
             while(
$i<=$rows)
             {
                   
$zeile=mysql_fetch_assoc($result);
                   
$tausgabe .= "<tr><td>".$zeile['id']."</td><td>".$zeile['name']."</td><td>".$zeile['teilnehmeranz']."</td></tr>";
                    
$i=$i+1;
             }

eval(
"\$test1 = \"".$templates->get("test1")."\";"); // Hier wird das erstellte Template geladen
output_page($test1);
?>



RE: Php scrip erstellen wo sich leute eintragen können - King Louis - 23.12.2011

jo kein problem. sicherheitstechnisch: kopier die connection erst unterhalb des add_breadcrumb und speicher deine connection, um sie am ende zu schliessen:

PHP-Code:
$connection mysql_connect($dbhost,$dbuser,$dbpass);
mysql_select_db($dbname$connection);
mysql_close($connection); 



RE: Php scrip erstellen wo sich leute eintragen können - Megaleecher - 24.12.2011

Warum verwendest du nicht die interne API von MyBB??

Sie bietet dir ein Datenbankobjekt an, bei dem du deine SQL-Querys absetzten kannst und die Ergebnisse dafür bekommst.

Dein Source-Code könnte dann wie folgt aussehen:

PHP-Code:
<?php
define
("IN_MYBB"1);
//define("NO_ONLINE", 1); // Wenn Seite nicht in Wer ist online-Liste auftauchen soll

require("global.php");

add_breadcrumb("test1");

$query $db->query("SELECT id, name, teilnehmeranz FROM plng_meetup");
$num $query?$db->num_rows($query):0;  

$tausgabe "";
if (
$num>0) {
    while(
$row $db->fetch_array($query)) {
        
$tausgabe .= "
            <tr>
                <td>
{$row['id']}</td>
                <td>
{$row['name']}</td>
                <td>
{$row['teilnehmeranz']}</td>
            </tr>
        "
;
    }
}

eval(
"\$test1 = \"".$templates->get("test1")."\";"); // Hier wird das erstellte Template geladen
output_page($test1);

?>

Wenn du die API von MyBB nutzt sparst du dir sehr oft zusätzlichen Code (wie z.B.: das erneute angeben der Verbindungsdaten zur Datenbank, usw...).

Außerdem sieht es eleganter aus und du kommst schneller zu einem Ergebnis Wink

MfG Megaleecher