[PHP] (doch keine sql) frage (möchter member mit daten anzeigen lassen)

RhinoGFX

Well-known member
28 Mai 2006
118
10
moin moin...
ich möchte mir was "bauen" (eine memberliste)
die soll dann eine tabelle generieren, die mir das dann quasi so anzeigt :
|USERNAME | (button für email) mit link| adresse zur homepage |
|USERNAME | (button für email) |
|USERNAME | (button für email) |
|USERNAME | (button für email) |
...usw...
nur leider habe ich jetzt nicht die ahnung davon.
wiess in etwa wie es funktioniert ( denke ich)
also ich weiss das ich dem "script" dann sagen muss:
gehe in die datenbank xy und suche dir dann für username die tabelle username und für die email die passende tabelle email.

aber nun, was genau mus sich da schreiben damit das alles funktioniert?
hilft mir da wer?
kann ja als gegenleistung banner,avatar oder sowas machen ( siehe sig)
 
Zuletzt bearbeitet:
RhinoGFX schrieb:
also ich weiss das ich dem "script" dann sagen muss:
gehe in die datenbank xy und suche dir dann für username die tabelle username und für die email die passende tabelle email.
Und wenn du uns noch sagst, wie die "tabelle username" und "die passende tabelle email" aussehen, brauchst du nicht mal ein Script, dann bau ich dir nämlich ne simple Query ;)
 
kann ich dir den auszug mal irgendwie per email oder so schicken den ich da habe?
 
RhinoGFX schrieb:
kann ich dir den auszug mal irgendwie per email oder so schicken den ich da habe?
Spar dir die Mail und poste einfach die Ausgaben von
SHOW CREATE TABLE `email`
und
SHOW CREATE TABLE `username`.

Das liefert alles, was man wissen muss :)
 
also wenn daß das ist :
PHP:
CREATE TABLE `soeststar_forumusers` (
  `user_id` mediumint(8) NOT NULL default '0',
  `user_active` tinyint(1) default '1',
  `username` varchar(25) collate latin1_german1_ci NOT NULL default '',
  `user_email` varchar(255) collate latin1_german1_ci default NULL,
 
Ungetestet, probier aus:

Code:
[FONT=Courier New][B][COLOR=DarkOrchid]CREATE TABLE IF NOT EXISTS[/COLOR][/B] `emails_only` (
  `username` [COLOR=DarkOrchid][B]VARCHAR[/B]([/COLOR]25[COLOR=DarkOrchid])[/COLOR] [COLOR=DarkOrchid][B]COLLATE [/B][/COLOR]latin1_german1_ci [COLOR=DarkOrchid][B]NOT NULL DEFAULT[/B][/COLOR] '',
  `user_email` [COLOR=DarkOrchid][B]VARCHAR[/B]([/COLOR]255[COLOR=DarkOrchid])[/COLOR] [B][COLOR=DarkOrchid]COLLATE[/COLOR][/B] latin1_german1_ci [COLOR=DarkOrchid][B]DEFAULT NULL[/B][/COLOR]
);

[COLOR=DarkOrchid][B]INSERT INTO[/B][/COLOR] `emails_only` [COLOR=DarkOrchid][B]SELECT[/B][/COLOR] `username`,`user_email` [B][COLOR=DarkOrchid]FROM[/COLOR][/B] `soeststar_forumusers`;[/FONT]
Indizes kannst du dann selber setzen, was es deine Struktur zulässt.
 
theHacker schrieb:
Indizes kannst du dann selber setzen, was es deine Struktur zulässt.
was heiste denn das nun wider?;)
will mich ja nicht blöder anstellen als ich bin,aber wie muss ich das nun machen? jetzt setze ich das so in eine lehre php datei rufe die auf und alle user werden dann so wie oben angezeigt? muss ich denke ich mal in das "root"verzeichnis des scriptes setzen,oder?!?! denke ich mal
 
RhinoGFX schrieb:
was heiste denn das nun wider?;)
Dass wenn du Indizes willst, du das selbermachen sollst :mrgreen:
RhinoGFX schrieb:
jetzt setze ich das so in eine lehre php datei rufe die auf und alle user werden dann so wie oben angezeigt?
Diese Query schickst du an deinen MySQL-Server.
Ob du das in der Konsole machst, ein PHP-Script nutzt oder eine andere Software einsetzt, ist egal.
Am einfachsten ist es halt, es direkt im phpMyAdmin einzugeben.
 
ahhhh habe den fehler gefunden,.. hab eich mich auch scheisse ausgedrückt.
also mit tabelle generieren meint ich dann eine seite mit einer tabelle, wo die user dann aufgelistet werden also ein html ergebnis mit usern in tabelle.
so das internetuser die members in einer tabelle aufgelistet sieht.
also praktisch wie hier.
so eine liste nur ohne schnick schnak drumm rum ;) und nicht so aufwendig nur halt username und emailbutton
 
RhinoGFX schrieb:
also ein html ergebnis mit usern in tabelle.
Und dann schreibst du fleißig "sql" in den Titel und lässt mich Querys posten :roll: :wall:

PHP:
echo "<table>";
echo "<tr><th>Username</th><th>User_Email</th></tr>";
$res=mysql_query("SELECT `username`,`user_email` FROM `soeststar_forumusers`");
while($row=mysql_fetch_array($res))
  echo "<tr><td>".$row['username']."</td><td>".$row['user_email']."</td></tr>";
mysql_free_result($res);
echo "</table>";
:yawn:
 
ja sorry,... :oops: :oops:

aber irgendwie gehts nicht
also hatte hier schon was , was ging, aber des war nicht unbedingt das was ich wollte:
PHP:
<?php 
define('IN_soeststar', true); 
$phpbb_root_path = './'; 
include($soeststar_root_path . 'extension.inc'); 
include($soeststar_root_path . 'common.'.$phpEx); 

$sql = "SELECT * 
   FROM " . USERS_TABLE . " 
   ORDER BY username"; 
if ( !($result = $db->sql_query($sql)) ) 
{ 
     message_die(GENERAL_ERROR, 'Could not obtain user information', '', __LINE__, __FILE__, $sql); 
} 

while ($user_row = $db->sql_fetchrow($result) ) 
{ 
echo '<tr> 
     <td width="100">'.$user_row['username'].'</td> 
   </tr>'; 
} 

?>
also es ging in soweit, das der name da stand, aber sonst nichts, und dann auch noch ohne zwischenraum zwischen den namen. also eigendlich doch nichts, aber ich hatte ein ergebnis
 
theHacker schrieb:
Ich liebe solche Posts :roll:
okay, das "irgendwie" sieht so aus :
Warning: mysql_query(): Access denied for user 'www-data'@'localhost' (using password: NO) in /var/www/web37/html/forum/abc.php on line 4

Warning: mysql_query(): A link to the server could not be established in /var/www/web37/html/forum/abc.php on line 4

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /var/www/web37/html/forum/abc.php on line 5

Warning: mysql_free_result(): supplied argument is not a valid MySQL result resource in /var/www/web37/html/forum/abc.php on line 7
 
Ich entnehme deiner NP, du bist 24 ? Und kannst kein Englisch ? 8O
Du solltest vielleicht vorher eine Verbindung zur Datenbank etablieren, sonst kann das freilich nichts werden.

Aus deinem Quellcode kann ich folgern, dass du wohl an einem phpBB2-Hack arbeitest, also kopier halt einfach den vorherigen Script-Kopf:
PHP:
define('IN_soeststar', true);  
$phpbb_root_path = './';  
include($soeststar_root_path . 'extension.inc');  
include($soeststar_root_path . 'common.'.$phpEx);
 
ja suppi,.. suppi suppi suppi,.. danke,.. wie ich das nun hin bekomme das anstad der email adresse ein bild da steht mit link mailto link bekomm eich auch in, verstehe englisch, nur habe ich dann immer schiss das ich nochmehr müll mache als vorher
 
ich hab mal mitgelesen und war auch grad mal auf deiner page, RhinoGFX

ich hab da mal ne frage:

was zum teufel sind desings ???
 
RhinoGFX schrieb:
ja suppi,.. suppi suppi suppi,.. danke,.. wie ich das nun hin bekomme das anstad der email adresse ein bild da steht mit link mailto link bekomm eich auch in, verstehe englisch, nur habe ich dann immer schiss das ich nochmehr müll mache als vorher
Wenn ich das Posting richtig dechiffriert habe, schaffst du den Rest auch ohne Hilfe ? :) Wenn dem so ist, einfach kurz mit dieser Grafik antworten: ':yes:'
 
:think: wenns so richtig iss
PHP:
  echo "<tr><td>".$row['username']."</td><td>"<a href="mailto:' . $row['user_email']"><img src="icon_email.gif" width="67" height="18" border="0"></a>"</td></tr>";

okay habe gemerkt das es so doch ncit geht, aber ich versuches erstma selber
 
Zuletzt bearbeitet:
RhinoGFX schrieb:
:think: wenns so richtig iss
PHP:
  echo "<tr><td>".$row['username']."</td><td>"<a href="mailto:' . $row['user_email']"><img src="icon_email.gif" width="67" height="18" border="0"></a>"</td></tr>";
Außer einem parse error wirst du da vermutlich nicht viel sehen ;)

Schau dir mal an, wo du Anführungszeichen auf und zu machst:
echo "<tr><td>".$row['username']."</td><td>"<a href="mailto:' . $row['user_email']"><img src="icon_email.gif" width="67" height="18" border="0"></a>"</td></tr>";

Alle markierten sind entweder falsch gesetzt oder nicht escaped :-?
 
ohhhh,.. ich heule gleich,... was iss den jetzt nicht richtig? die " und`? woher soll ich als ohne ahnung mensch wisen was jetzt falsch ist?:cry: