per link iframe größe ändern

anyany

Mitglied
Hallo, ich hatte mir überlegt Eine Textausgabe zu machen und diese in einem kurzen Stichpunkt zusammenzufassen. Da ich danach aber mehrerer solcher Ausgaben machen wollte gefiehl mir die Platzaufteilung und das ewige scrollen nicht. Also habe ich mich gefragt ob man wenn man zum Beispiel auf "[+]" drückt, die Größe eines Iframes zu ändern. Da ich aber sogut wie Neuling in JS bin hab ich mich gefragt ob das auch mit PHP geht. Ich weiss das PHP zwar serverseitig ist aber gehts trotzdem iwie?
 
Also gehen tut es auf jeden Fall.

Eine ziemlich knapp gefasst Version da ich gleich Feierabend hab :

PHP:
<? if (!isset($_GET["size"])) $_GET["size"] = 100; ?>

<a href='a.php?size=<? echo $_GET["size"] + 100; ?>'>[ + ]</a>
<iframe name="a" width="<? echo $_GET["size"]; ?>" border="1"></iframe>

Zuerst wird geprüft ob die Variable SIZE vorhanden ist, wenn nicht mit Defaultwert belegen.
Im Link des bisherigen Wert immer um z.B. 100 Pixel erhöhen.
Wird die Seite nun über den Link aufgerufen wir im IFRAME der entsprechende Wert verwendet.

Hoffe Du verstehst wie es gemeint ist. Ansonsten einfach nochmal hier melden.

Gruß Thomas
 
Ok also ich habs ausprobiert sowirklich funktioniert es nicht, er will dann immer auf ne andere seite verweisen :/
EDIT okay ich war zu blöd thx

So das hat soweit funktioniert und wie würde das jetzt mit ner Tabelle funktionieren? Bitte auch gleich mit auf und zuklappen
 
Hättest du dir das obere Beispiel von tombe verinnerlicht, wäre es kein Problem mehr, selbst herauszufinden, wie es geht und wie nicht. Des Weiteren stellt sich mir die Frage, warum nicht über Javascript? Das würde das ständige Neuladen unterbinden, Traffic und Serverlast einsparen, und allgeimein: Die Oberfläche sollte von Anfang den höchstmöglichen Komfort und Umfang bieten, der zu erreichen ist - Nachträgliche Dynamik kann man mit JavaScript oder einer anderen clientseitigen Scriptsprache erreichen. Wer kein JS oä aktiviert hat, muss sich mit dem größtmöglichen statischen Komfort abfinden und hat dennoch nix verloren.

Mit JavaScript ließe sich über die Style-Attribute arbeiten, zB
HTML:
<script type="text/javascript">
function toggleDisplay(objid) {
    if (obj = document.getElementById(objid)) {
        obj.style.display.setAttribute("display", (obj.style.getAttribute("display", false) == "none") ? "block" : "none", false);
    }
    return false;
}

function resize(objid, value) {
    if (obj = document.getElementById(objid)) {
        obj.style.display.setAttribute("width", parseInt(obj.style.getAttribute("width", false)) + value, false);
    }
    return false;
}
</script>
<table id="mytable" style="width: 500px">
  <tbody id="mybody1">
    ...
  </tbody>
  <tbody id="mybody2">
    ...
  </tbody>
</table>
<a href="#" onclick="return toggleDisplay('mybody1')">mybody1 ein- / ausblenden</a>
<a href="#" onclick="return resize('mytable', +100)">mytable erweitern</a>
<a href="#" onclick="return resize('mytable', -100)">mytable verkleinern</a>

Schießmichtot - Ist höchstwahrscheinlich falsch, aber so in etwa kann man es machen.
 
Aus tombes Beispiel kurz hergeleitet:

PHP:
<? if (!isset($_GET["size"])) $_GET["size"] = 100; ?> 

<a href='a.php?size=<? echo $_GET["size"] + 100; ?>'>[ + ]</a> | <a href='a.php?size=<? echo $_GET["size"] - 100; ?>'>[ - ]</a>
<table height="<? echo $_GET["size"]; ?>"> ... </table>
 
okay und das ganze jetzt für zwei tabellen?
also ich machs mit
PHP:
echo '<a href="retro.php?visc=true" style="text-decoration:none; background-color:#000000;font-weight:bold;">[ + ] Counter  <br></a>';
und wie mach ich das jetzt mit zwei links? also wenn der eine aufgeklappt ist soll der andere auch aufgeklappt bleiben wenn ich ihn aufklappe, ich hoffe ihr wisst was ich meine ^^
 
Zurück