HTMLWorld - HTML, CSS, JavaScript, PHP, Java, Flash und vieles mehrHTMLWorld:   Home | Impressum
 

 
 

Anzeige 
 
HTMLWorld » Forum

Thema anzeigen - if/else abfrage

 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren 
 ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

if/else abfrage

 

Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   MySQL
Vorheriges Thema:
Nächstes Thema:  
Autor Nachricht
kollege



Anmeldungsdatum: 20.01.2010
Beiträge: 2

BeitragVerfasst am: 20.01.2010 18:45:11    Titel: if/else abfrage Antworten mit Zitat

manchmal sind es die kleinen dinge, die einen zur verzweiflung treiben - in diesem fall eine popelige if/else abfrage.

das problem: ich verwende eine komponente, die es ermöglicht, punkte zu sammeln, wenn ein neukunde von einem bestandskunden empfohlen wurde. in dem fall erhält der bestandskunde punkte gutgeschrieben.

diese funktion wurde in die "checkout_payment.php"-datei integriert. funktioniert tadellos, aaaaaber leider wird die abfrage "Kamen Sie auf Empfehlung eines Kunden" jedesmal - also auch bei "altkunden" angezeigt.

hier der original-code:

function referral_input() {

if (tep_not_null(USE_REFERRAL_SYSTEM)) {
?>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<tr>
<td><table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td class="mainred"><b><?php echo TABLE_HEADING_REFERRAL; ?></b></td>
</tr>
</table></td>
</tr>
<tr>
<td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">
<tr class="infoBoxContents">
<td><table border="0" width="100%" cellspacing="5" cellpadding="2">
<tr>
<td width="60%" class="main"><?php echo TEXT_REFERRAL_REFERRED; ?></td>
<td width="40%" align="RIGHT" class="main"><?php echo tep_draw_input_field('customer_referred', $customer_referred); ?></td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<?php
}
}

?>


optimal wäre es jedoch, wenn in dem code vorher eine abfrage stattfindet, die feststellt, ob es sich um einen neu- oder bestandskunden handelt.
möglich wäre dies, indem abgefragt wird, ob der besteller über eine kundennummer (bei mir "customers_additional_customers_number") verfügt. bei neukunden kann das nicht sein, da die kundennummer bei uns "von hand" vergeben wird ...

z.b. if kundennummer (leer), dann echo code oben, sonst einen text (z.b. empfehlen sie uns weiter und kassieren punkte ... oder so)


hab versucht, das problem wie folgt zu lösen, aber irgendwie steh ich auf dem schlauch ...

$customers_additional_customers_number_abfrage = "SELECT customers_additional_customers_number FROM" . TABLE_CUSTOMERS . "WHERE customers_additional_customers_number AND customer_id IS NOT NULL";

$customers_additional_customers_number_ergebnis = mysql_query($customers_additional_customers_number_abfrage);

if ($customers_additional_customers_number_ergebnis == 'true') {

echo WEITEREMPFEHLEN;

} else {

?> <table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td class="mainred"><b><?php echo TABLE_HEADING_REFERRAL; ?></b></td>
</tr>
</table></td>
</tr>
<tr>
<td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">
<tr class="infoBoxContents">
<td><table border="0" width="100%" cellspacing="5" cellpadding="2">
<tr>
<td width="80%%" class="main"><?php echo TEXT_REFERRAL_REFERRED; ?></td>
<td width="20%%" align="RIGHT" class="main"><?php echo (tep_draw_input_field('customer_referred', $customer_referred))?>
</td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<?php
}
}
}

?>

egal, ob im feld kundennummer (customers_additional_customers_number) etwas eingetragen ist oder nicht - es wird immer die abfrage "Wurden Sie empfohlen" angezeigt ...

jemand ne idee?

danke.
georg
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
kollege



Anmeldungsdatum: 20.01.2010
Beiträge: 2

BeitragVerfasst am: 21.01.2010 07:37:35    Titel: Die Lösung! Antworten mit Zitat

sodele, manchmal sieht man vor lauter bäumen den wald nicht ...
problem ist gelöst. und es war - natürlich - einfacher als einfach.

die abfrage wurde nicht mehr auf die kundennummer, sondern auf "getätigte bestellungen" ($orders_total) bezogen.

für alle die es interessiert, hier mein code ab "function referral_input():


function referral_input() {
if (tep_not_null(USE_REFERRAL_SYSTEM)) {
?>
<tr>
<td><?php echo tep_draw_separator('pixel_trans.gif', '100%', '10'); ?></td>
</tr>
<tr>
<td>
<?php

$orders_total = tep_count_customer_orders();
if ($orders_total > 0) {
?>
<table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td class="mainred"><b><?php echo TABLE_HEADING_WEITEREMPFEHLEN; ?></b></td>
</tr>
</table></td>
</tr>
<tr>
<td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">
<tr class="infoBoxContents">
<td><table border="0" width="100%" cellspacing="5" cellpadding="2">
<tr>
<td VALIGN="TOP" width="70%%" class="main"><?php echo TEXT_REFERRAL_WEITEREMPFEHLEN; ?></td>
<td width="30%%" align="RIGHT" class="main"><img SRC="../../images/intern/et_50.jpg"><img SRC="../../images/intern/et_50.jpg"><img SRC="../../images/intern/et_50.jpg">
</td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<?php
} else {
?> <table border="0" width="100%" cellspacing="0" cellpadding="2">
<tr>
<td class="mainred"><b><?php echo TABLE_HEADING_REFERRAL; ?></b></td>
</tr>
</table></td>
</tr>
<tr>
<td><table border="0" width="100%" cellspacing="1" cellpadding="2" class="infoBox">
<tr class="infoBoxContents">
<td><table border="0" width="100%" cellspacing="5" cellpadding="2">
<tr>
<td width="80%%" class="main"><?php echo TEXT_REFERRAL_REFERRED; ?></td>
<td width="20%%" align="RIGHT" class="main"><?php echo (tep_draw_input_field('customer_referred', $customer_referred))?>
</td>
</tr>
</table></td>
</tr>
</table></td>
</tr>
<?php
}
}
}

?>

natürlich muss man die sprachfiles entsprechend anpassen Wink

bei mir sieht es klasse aus und ich hoffe, dass ich so die/den eine/n oder andere/n dazu bewegen kann, uns weiter zu empfehlen ...

viel erfolg!
georg [img][/img]
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden
Beiträge der letzten Zeit anzeigen:   
Neues Thema eröffnen   Neue Antwort erstellen    HTMLWorld Foren-Übersicht
   MySQL
Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.