php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 23-07-2003, 10:59
Kleinschmidt
 Junior Member
Links : Onlinestatus : Kleinschmidt ist offline
Registriert seit: Nov 2002
Ort: Bayreuth
Beiträge: 143
Kleinschmidt ist zur Zeit noch ein unbeschriebenes Blatt
Standard verknüpfen von arrays ?

Hi Leute leider wieder ein Problem ....


Zur Erläuterung: Ich habe in meiner Datenbank mehrere Tabellen Müller, Maier, Scholz usw. und eine Sschhlüsseltabelle wo nochmal die Namen der Firman drin steht .
Nun Habe ich eine Abfrage die mir Die Namen der Firman Also aus der schlüsseltablle abfragt und dann gleich im Anschluss eine Abfrage die die Einzelnen Firmen Tabellen abfragt und mir Daten dazu ausgib, nun das Problem das sind ja jetzt alles einzelne Arrays also Scholz, Müller, Maier oder nun wie bekomm ich diese zu einem Array zusammen da ich später alles Daten brauch um eine zufallsauswahl aus allen Daten zu treffen ?

Hier nochmal die Abfrage die ich mache ( Danke an Wotan, mrhappiness, Abraxax ) haben mir sehr dabei geholfen :-)


PHP-Code:

$conn 
mysql_connect("$MySQL_Host""$MySQL_User""$MySQL_Pass");
if(
$conn)
    {
    
mysql_select_db("$MySQL_Data"$conn);
    }
else
    {
    die(
"<b>Oops, something goes wrong</b> ".mysql_error());
    }
$sql "SELECT * FROM schluessel";
$result mysql_query ($sql)or die(mysql_error());
while(
$row mysql_fetch_array($result))
{
    echo 
'<b>&raquo;&raquo;'.$row['T_name'].'&laquo;&laquo;</b><br>';
    
$Name_=$row[T_name];
    
$sql2 "SELECT * FROM $Name_";
    
$result2 mysql_query ($sql2)or die(mysql_error());
    while(
$row mysql_fetch_array($result2))
    {
    echo 
'<a href="#" onClick="window.open(\'start/1_schaufenster/1_popup.php?Produkt='.$row['produkt'];
echo 
'&Art='.$row['art'].'&Beschreibung='.$row['beschreibung'].'&Bild='.$row['bild'].'&Firma='.$row['firma'];
echo 
'&Ziel='.$row['ziel'].'&Visitenkarte='.$row['visitenkarte'].'\', \'NewWindow\',';
echo 
'\'toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,';
echo 
'resizable=no,copyhistory=no,width=600,height=600\')"><img src="start/'.$row['link'].'/klein/'.$row['bild'].'" ';
echo 
'alt="" border="0"></a>';
echo 
$row[ID].'<br>';
    }

Gruss sascha
__________________
Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )

Geändert von Kleinschmidt (23-07-2003 um 11:25 Uhr)
Mit Zitat antworten
freelancermap.de - IT Projektvermittlung für Selbständige und Freiberufler
  #2 (permalink)  
Alt 23-07-2003, 11:32
wahsaga
  Moderator
Links : Onlinestatus : wahsaga ist offline
Registriert seit: Sep 2001
Beiträge: 25.236
wahsaga befindet sich auf einem aufstrebenden Ast
Standard Re: verknüpfen von arrays ?

Zitat:
Original geschrieben von Kleinschmidt
Zur Erläuterung: Ich habe in meiner Datenbank mehrere Tabellen Müller, Maier, Scholz usw. und eine Sschhlüsseltabelle wo nochmal die Namen der Firman drin steht .
warum wählst du dann nicht erstmal per zufall einen eintrag aus dieser schlüsseltabelle aus, und an hand dessen dann die weiteren daten aus der jeweiligen firmen-tabelle?
__________________
I don't believe in rebirth. Actually, I never did in my whole lives.
Mit Zitat antworten
  #3 (permalink)  
Alt 23-07-2003, 12:03
Kleinschmidt
 Junior Member
Links : Onlinestatus : Kleinschmidt ist offline
Registriert seit: Nov 2002
Ort: Bayreuth
Beiträge: 143
Kleinschmidt ist zur Zeit noch ein unbeschriebenes Blatt
Standard

das ist es ja gerade ich möchte ja die gsammten Firman mit einbeziehen da ja sonst jemand benachteiligt werden könnte.


Gruss sascha
__________________
Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )
Mit Zitat antworten
  #4 (permalink)  
Alt 23-07-2003, 12:31
RobertTheHero
 Member
Links : Onlinestatus : RobertTheHero ist offline
Registriert seit: May 2003
Beiträge: 313
RobertTheHero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Nun ja wenn ich dich richtig verstanden habe dann z.B. so

PHP-Code:
....

    }
else
    {
    die(
"<b>Oops, something goes wrong</b> ".mysql_error());
    }
$alle_firmen=array(); // array initialisieren

$sql "SELECT * FROM schluessel";
$result mysql_query ($sql)or die(mysql_error());

.....

$result2 mysql_query ($sql2)or die(mysql_error());
    while(
$row mysql_fetch_array($result2))
    {
      
$alle_firmen[]=$row// jeweilst die aktuelle firma hinzufügen

    
echo '<a href="#" onClick="window.open('start/1_schaufenster/1_popup.php?Produkt='.$row['produkt'];
echo '
&Art='.$row['art'].'&Beschreibung='.$row['beschreibung'].'&Bild='.$row['bild'].'&Firma='.$row['firma];

..... 
und nach den beiden schleifen, hast du dann alle Firmen in $alle_firmen.

gruss

rth







__________________
H I L F E
GD FreeType Antialising
Gesuch PHP Entwicklungsumgebung
------------------------------------------
Der Cmabrigde rael tset, sruf whoin du wlilst

Geändert von RobertTheHero (23-07-2003 um 13:00 Uhr)
Mit Zitat antworten
  #5 (permalink)  
Alt 23-07-2003, 12:55
Kleinschmidt
 Junior Member
Links : Onlinestatus : Kleinschmidt ist offline
Registriert seit: Nov 2002
Ort: Bayreuth
Beiträge: 143
Kleinschmidt ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Mhh... das sieht gut aus :-)

Danke, werd ich gleich mal probieren.


Gruss sascha
__________________
Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )
Mit Zitat antworten
  #6 (permalink)  
Alt 23-07-2003, 13:21
Kleinschmidt
 Junior Member
Links : Onlinestatus : Kleinschmidt ist offline
Registriert seit: Nov 2002
Ort: Bayreuth
Beiträge: 143
Kleinschmidt ist zur Zeit noch ein unbeschriebenes Blatt
Standard

das hat funktioniert galub ich. Wie kann ich mir jetzt dieses Array also $alle_firmen; ausgeben lassen.


Sorry bin wirklich a newbie.


Gruss Sascha
__________________
Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )
Mit Zitat antworten
  #7 (permalink)  
Alt 23-07-2003, 13:34
RobertTheHero
 Member
Links : Onlinestatus : RobertTheHero ist offline
Registriert seit: May 2003
Beiträge: 313
RobertTheHero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Wie ausgeben ?

also mit

PHP-Code:
var_dump($alle_firmen); 
siehste was alles in dem array drin ist.

mit z.B.

PHP-Code:
while (list($key,$val)=each($alle_firmen))
{
....

durchläufst du das ganze array.

aber du wolltest doch
Zitat:
zu einem Array zusammen da ich später alles Daten brauch um
eine zufallsauswahl aus allen Daten zu
das geht mit
PHP-Code:
  $zufall=array_rand($alle_firmen); 
rth
__________________
H I L F E
GD FreeType Antialising
Gesuch PHP Entwicklungsumgebung
------------------------------------------
Der Cmabrigde rael tset, sruf whoin du wlilst
Mit Zitat antworten
  #8 (permalink)  
Alt 23-07-2003, 13:44
Kleinschmidt
 Junior Member
Links : Onlinestatus : Kleinschmidt ist offline
Registriert seit: Nov 2002
Ort: Bayreuth
Beiträge: 143
Kleinschmidt ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
zu einem Array zusammen da ich später alles Daten brauch um
eine zufallsauswahl aus allen Daten zu
O.K. das will ich auch immernoch...


der Hintergrund ist das ich daraus Links gereriere also in einer Firmen Tabelle Steht zum bsp. Id, Produkt, Becshreibung, Bild , Link, Firma, Ziel, Preis,


und nun muss ich aus allen Firmen halt z.B. durch zufall 10 ausuchen und

dann sollen 10 Links mit Bildern erscheinen und dann wenn ich darauf klick kommt ein Popup mit den jeweiligen Daten.

Gruss sascha
__________________
Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )
Mit Zitat antworten
  #9 (permalink)  
Alt 23-07-2003, 14:04
RobertTheHero
 Member
Links : Onlinestatus : RobertTheHero ist offline
Registriert seit: May 2003
Beiträge: 313
RobertTheHero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Gut

das Rüstzeug haste ja dazu schon
PHP-Code:
$zufall=array_rand($alle_firmen); 
musste halt 10 mal machen, und am besten in ein neues Array speichern.

Und mit diesem "zufalls array" erzeugst du dann deine seite...

.. allerdings hättest du das alles vorher gesagt hätte wir gar nicht mit arrays rumhantieren müssen

PHP-Code:

$sql 
"SELECT * FROM schluessel ORDER BY RAND () LIMIT 0,10"
liefert zufällig 10 ergebnisse aus der schlüsseltabelle, und somit ist dies eigentlich das einzige was du ändern muss, brauchst die ganzen arrays gar nicht.

rth
__________________
H I L F E
GD FreeType Antialising
Gesuch PHP Entwicklungsumgebung
------------------------------------------
Der Cmabrigde rael tset, sruf whoin du wlilst
Mit Zitat antworten
  #10 (permalink)  
Alt 23-07-2003, 14:16
Kleinschmidt
 Junior Member
Links : Onlinestatus : Kleinschmidt ist offline
Registriert seit: Nov 2002
Ort: Bayreuth
Beiträge: 143
Kleinschmidt ist zur Zeit noch ein unbeschriebenes Blatt
Standard

mhh...
Zitat:
PHP-Code:
$sql "SELECT * FROM schluessel ORDER BY RAND () LIMIT 0,10"

so bekomm ich doch aber bloß 10 Firmen, das was ich will sind aber alle Firmen die in der schlüsseltabelle stehen und von diesen Firmen die teilweise 20 oder 30 oder 5 oder 10 jeweils Produkte haben also Firma Müller hat 10 Produkte und Firma Scholz hat 20 nun sollen alle Firmen in betracht gezogen werden und von allen Firmen aus allen Produkten insgesammt 10 Produkte gewählt werden .


vieleicht kann ich ja deinen Abfrage so umstellen also


PHP-Code:

...
$sql "SELECT * FROM schluessel";
$result mysql_query ($sql)or die(mysql_error());
while(
$row mysql_fetch_array($result))
{
    echo 
'<b>&raquo;&raquo;'.$row['T_name'].'&laquo;&laquo;</b><br>';
    
$Name_=$row[T_name];
    
$sql2 "SELECT * FROM $Name_ ORDER BY RAND () LIMIT 0,10";// Diese Zeile mein ich 
    
$result2 mysql_query ($sql2)or die(mysql_error());
    while(
$row mysql_fetch_array($result2))
    { 
kann man das so machen ?
werd es mal probieren .


Gruss sascha
__________________
Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )
Mit Zitat antworten
  #11 (permalink)  
Alt 23-07-2003, 14:20
RobertTheHero
 Member
Links : Onlinestatus : RobertTheHero ist offline
Registriert seit: May 2003
Beiträge: 313
RobertTheHero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

hm aso, ne leider nicht,

denn so würdest du von jeder firma zufällig 10 produkte wählen.

Also dann doch mit den arrays machen.
__________________
H I L F E
GD FreeType Antialising
Gesuch PHP Entwicklungsumgebung
------------------------------------------
Der Cmabrigde rael tset, sruf whoin du wlilst
Mit Zitat antworten
  #12 (permalink)  
Alt 23-07-2003, 14:22
Kleinschmidt
 Junior Member
Links : Onlinestatus : Kleinschmidt ist offline
Registriert seit: Nov 2002
Ort: Bayreuth
Beiträge: 143
Kleinschmidt ist zur Zeit noch ein unbeschriebenes Blatt
Standard

mhh.. hab ich gerade gemerkt das es mir dann halt aus jeder fIRMA 10 Produkt nimmt .


mhh das iss ganz sche verzwickt.
__________________
Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )
Mit Zitat antworten
  #13 (permalink)  
Alt 23-07-2003, 14:36
RobertTheHero
 Member
Links : Onlinestatus : RobertTheHero ist offline
Registriert seit: May 2003
Beiträge: 313
RobertTheHero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

eigentlich nicht..

PHP-Code:
$conn mysql_connect("$MySQL_Host""$MySQL_User""$MySQL_Pass");
if(
$conn)
    {
    
mysql_select_db("$MySQL_Data"$conn);
    }
else
    {
    die(
"<b>Oops, something goes wrong</b> ".mysql_error());
    }
$sql "SELECT * FROM schluessel";
$alle_produkte=array(); // aray initialsieren
$result mysql_query ($sql)or die(mysql_error());
while(
$row mysql_fetch_array($result))
{
    echo 
'<b>&raquo;&raquo;'.$row['T_name'].'&laquo;&laquo;</b><br>';
    
$Name_=$row[T_name];
    
$sql2 "SELECT * FROM $Name_";
    
$result2 mysql_query ($sql2)or die(mysql_error());
    while(
$row mysql_fetch_array($result2))
    {
        
$alle_produkte[]=
            
'<a href="#" onClick="window.open('start/1_schaufenster/1_popup.php?Produkt='.$row['produkt'].
        '
&Art='.$row['art'].'&Beschreibung='.$row['beschreibung'].'&Bild='.$row['bild'].'&Firma='.$row['firma'].
        '
&Ziel='.$row['ziel'].'&Visitenkarte='.$row['visitenkarte'].'', 'NewWindow','.
        
''toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,'.
        '
resizable=no,copyhistory=no,width=600,height=600')"><img src="start/'.$row['link'].'/klein/'.$row['bild'].'" '.
        
'alt="" border="0"></a>'.
        .
$row[ID].'<br>';
    }
    
    
// in $alle_produkte stehen jetzt alle links für die produkte drin
    // nun 10 zufällig auswählen
    
$zufall_arr=array();
    
srand(time());
    
$a=0;
    while (
$a<10)
    {
        
$zuf=rand(0,count($alle_produkte));
        if (!isset(
$zufall_arr[$zuf]))
        {
            
$zufall_arr[$zuf]=$alle_produkte[$zuf];
            
$a++;
        }
    }
    
    
// und jetzt die links noch ausgeben
    
echo implode("<br>",$zufall_arr);
    
    
// fertig

ich dachte nur du kommst selber auf ne lösung ....
aber das sollte funktionieren, wenn noch fragen, frag

rth
__________________
H I L F E
GD FreeType Antialising
Gesuch PHP Entwicklungsumgebung
------------------------------------------
Der Cmabrigde rael tset, sruf whoin du wlilst
Mit Zitat antworten
  #14 (permalink)  
Alt 23-07-2003, 14:47
Kleinschmidt
 Junior Member
Links : Onlinestatus : Kleinschmidt ist offline
Registriert seit: Nov 2002
Ort: Bayreuth
Beiträge: 143
Kleinschmidt ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
{
        
$alle_produkte[]=
            
'<a href="#" onClick="window.open('start/1_schaufenster/1_popup.php?Produkt='.$row['produkt'].
        '
&Art='.$row['art'].'&Beschreibung='.$row['beschreibung'].'&Bild='.$row['bild'].'&Firma='.$row['firma'].
        '
&Ziel='.$row['ziel'].'&Visitenkarte='.$row['visitenkarte'].'', 'NewWindow','.
        
''toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,'.
        '
resizable=no,copyhistory=no,width=600,height=600')"><img src="start/'.$row['link'].'/klein/'.$row['bild'].'" '.
        
'alt="" border="0"></a>'.
        .
$row[ID].'<br>';
    } 
da macht er irgeneinen parseerror,
ich glaub das ist weil darin html und noch javascript enthalten ist das macht irgendwie probleme.



mhh auf die lösung würde ich ohne hilfe nicht kommen da ich wirklich noch ein anfänger bin.

wollte die zufalls funktion so in etwa aufbauen
PHP-Code:
srand ((double)microtime()*1000000);
$rand_keys array_rand ($zufallcount($zufall));
for(
$i=;$i <=count($zufall) ;$i++ ){
${
"test_".$i} =$zufall[$rand_keys[$i]];

mhh ging aber auch nicht.
__________________
Konservative sind sehr für den Fortschritt sofern der auf der Stelle tritt. ( Norman Mailer )
Mit Zitat antworten
  #15 (permalink)  
Alt 23-07-2003, 14:57
RobertTheHero
 Member
Links : Onlinestatus : RobertTheHero ist offline
Registriert seit: May 2003
Beiträge: 313
RobertTheHero ist zur Zeit noch ein unbeschriebenes Blatt
Standard

naja den string habe ich mir jetzt nicht genau angeschaut, bin davon ausgegangen, das dein prog vorher ohne parse fehler durchläuft.
Also wenn der string da richtig ist dann läuft das.

kannst ja mal zur probe

PHP-Code:

        $alle_produkte
[]=$row['produkt']; 

nur schreiben. um zu sehen das das mit dem zufall klappt.

rth

p.m.
zu deinem code, lies dir mal bitte die funktions beschreibung von array_rand durch.
__________________
H I L F E
GD FreeType Antialising
Gesuch PHP Entwicklungsumgebung
------------------------------------------
Der Cmabrigde rael tset, sruf whoin du wlilst
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

PHP Marktplatz-Software
PHP Marktplatz-SoftwareEs hat sich viel getan! Die neue Version 7.5.9 unserer PHP Marktplatz-Software ebiz-trader steht ab sofort zur Verfügung.

28.10.2019 | Berni

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni


 

Aktuelle PHP Scripte

Formmailer v1.7.0 Bootstrap 4

Formmailer v1.7.0 Bootstrap wurde extra für Bootstrap entwickelt. Mit Bootstrap kann man schnell und einfach kleine oder große Projekte entwickeln, die auf Geräten in allen erdenklichen Formen funktionieren.

16.04.2020 arne-home | Kategorie: PHP/ Formular
Upload v1.1.0 Bootstrap

Mit dem PHP - Uploadscript kann man schnell und einfach Bilder und Dateien auf den Webserver hochladen.

16.04.2020 arne-home | Kategorie: PHP/ File
Microweber CMS

Open source, drag and drop website builder

13.01.2020 Berni | Kategorie: HTML5/ EDITOR
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 21:14 Uhr.